mirror of
https://github.com/rust-lang/rust.git
synced 2026-05-28 20:16:58 +03:00
Fix simd_cast
This commit is contained in:
@@ -68,6 +68,7 @@ unsafe fn test_simd() {
|
||||
test_mm256_movemask_epi8();
|
||||
test_mm_add_epi8();
|
||||
test_mm_add_pd();
|
||||
test_mm_cvtepi8_epi16();
|
||||
|
||||
let mask1 = _mm_movemask_epi8(dbg!(_mm_setr_epi8(255u8 as i8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)));
|
||||
assert_eq!(mask1, 1);
|
||||
@@ -170,6 +171,18 @@ pub unsafe fn assert_eq_m128d(a: __m128d, b: __m128d) {
|
||||
}
|
||||
}
|
||||
|
||||
#[target_feature(enable = "sse4.1")]
|
||||
unsafe fn test_mm_cvtepi8_epi16() {
|
||||
let a = _mm_set1_epi8(10);
|
||||
let r = _mm_cvtepi8_epi16(a);
|
||||
let e = _mm_set1_epi16(10);
|
||||
assert_eq_m128i(r, e);
|
||||
let a = _mm_set1_epi8(-10);
|
||||
let r = _mm_cvtepi8_epi16(a);
|
||||
let e = _mm_set1_epi16(-10);
|
||||
assert_eq_m128i(r, e);
|
||||
}
|
||||
|
||||
#[derive(PartialEq)]
|
||||
enum LoopState {
|
||||
Continue(()),
|
||||
|
||||
Reference in New Issue
Block a user