Skip to content

Commit 13d2384

Browse files
pythoneeralexcrichton
authored andcommitted
fixed _mm_set_pd and _mm_setr_pd by reversing order (rust-lang#124)
1 parent aafe927 commit 13d2384

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

src/x86/sse2.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -1842,15 +1842,15 @@ pub unsafe fn _mm_set_pd1(a: f64) -> f64x2 {
18421842
#[inline(always)]
18431843
#[target_feature = "+sse2"]
18441844
pub unsafe fn _mm_set_pd(a: f64, b: f64) -> f64x2 {
1845-
f64x2::new(a, b)
1845+
f64x2::new(b, a)
18461846
}
18471847

18481848
/// Set packed double-precision (64-bit) floating-point elements in the return value with the
18491849
/// supplied values in reverse order.
18501850
#[inline(always)]
18511851
#[target_feature = "+sse2"]
18521852
pub unsafe fn _mm_setr_pd(a: f64, b: f64) -> f64x2 {
1853-
f64x2::new(b, a)
1853+
f64x2::new(a, b)
18541854
}
18551855

18561856
/// returns packed double-precision (64-bit) floating-point elements with all zeros.
@@ -3774,13 +3774,13 @@ mod tests {
37743774
#[simd_test = "sse2"]
37753775
unsafe fn _mm_set_pd() {
37763776
let r = sse2::_mm_set_pd(1.0_f64, 5.0_f64);
3777-
assert_eq!(r, f64x2::new(1.0_f64, 5.0_f64));
3777+
assert_eq!(r, f64x2::new(5.0_f64, 1.0_f64));
37783778
}
37793779

37803780
#[simd_test = "sse2"]
37813781
unsafe fn _mm_setr_pd() {
37823782
let r = sse2::_mm_setr_pd(1.0_f64, -5.0_f64);
3783-
assert_eq!(r, f64x2::new(-5.0_f64, 1.0_f64));
3783+
assert_eq!(r, f64x2::new(1.0_f64, -5.0_f64));
37843784
}
37853785

37863786
#[simd_test = "sse2"]

0 commit comments

Comments
 (0)