Skip to content

Commit eaad129

Browse files
committed
Add _mm_sfence to all non-temporal intrinsic tests
1 parent b39573d commit eaad129

File tree

6 files changed

+14
-0
lines changed

6 files changed

+14
-0
lines changed

crates/core_arch/src/x86/avx.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4249,6 +4249,7 @@ mod tests {
42494249
let a = _mm256_setr_epi64x(1, 2, 3, 4);
42504250
let mut r = _mm256_undefined_si256();
42514251
_mm256_stream_si256(ptr::addr_of_mut!(r), a);
4252+
_mm_sfence();
42524253
assert_eq_m256i(r, a);
42534254
}
42544255

@@ -4263,6 +4264,7 @@ mod tests {
42634264
let mut mem = Memory { data: [-1.0; 4] };
42644265

42654266
_mm256_stream_pd(ptr::addr_of_mut!(mem.data[0]), a);
4267+
_mm_sfence();
42664268
for i in 0..4 {
42674269
assert_eq!(mem.data[i], get_m256d(a, i));
42684270
}
@@ -4279,6 +4281,7 @@ mod tests {
42794281
let mut mem = Memory { data: [-1.0; 8] };
42804282

42814283
_mm256_stream_ps(ptr::addr_of_mut!(mem.data[0]), a);
4284+
_mm_sfence();
42824285
for i in 0..8 {
42834286
assert_eq!(mem.data[i], get_m256(a, i));
42844287
}

crates/core_arch/src/x86/avx512f.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56432,6 +56432,7 @@ mod tests {
5643256432
let mut mem = Memory { data: [-1.0; 16] };
5643356433

5643456434
_mm512_stream_ps(&mut mem.data[0] as *mut f32, a);
56435+
_mm_sfence();
5643556436
for i in 0..16 {
5643656437
assert_eq!(mem.data[i], get_m512(a, i));
5643756438
}
@@ -56448,6 +56449,7 @@ mod tests {
5644856449
let mut mem = Memory { data: [-1.0; 8] };
5644956450

5645056451
_mm512_stream_pd(&mut mem.data[0] as *mut f64, a);
56452+
_mm_sfence();
5645156453
for i in 0..8 {
5645256454
assert_eq!(mem.data[i], get_m512d(a, i));
5645356455
}
@@ -56464,6 +56466,7 @@ mod tests {
5646456466
let mut mem = Memory { data: [-1; 8] };
5646556467

5646656468
_mm512_stream_si512(mem.data.as_mut_ptr().cast(), a);
56469+
_mm_sfence();
5646756470
for i in 0..8 {
5646856471
assert_eq!(mem.data[i], get_m512i(a, i));
5646956472
}

crates/core_arch/src/x86/sse.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3331,6 +3331,7 @@ mod tests {
33313331
let mut mem = Memory { data: [-1.0; 4] };
33323332

33333333
_mm_stream_ps(ptr::addr_of_mut!(mem.data[0]), a);
3334+
_mm_sfence();
33343335
for i in 0..4 {
33353336
assert_eq!(mem.data[i], get_m128(a, i));
33363337
}

crates/core_arch/src/x86/sse2.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4066,6 +4066,7 @@ mod tests {
40664066
);
40674067
let mut r = _mm_set1_epi8(0);
40684068
_mm_maskmoveu_si128(a, mask, ptr::addr_of_mut!(r) as *mut i8);
4069+
_mm_sfence();
40694070
let e = _mm_set_epi8(0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
40704071
assert_eq_m128i(r, e);
40714072
}
@@ -4102,6 +4103,7 @@ mod tests {
41024103
let a = _mm_setr_epi32(1, 2, 3, 4);
41034104
let mut r = _mm_undefined_si128();
41044105
_mm_stream_si128(ptr::addr_of_mut!(r), a);
4106+
_mm_sfence();
41054107
assert_eq_m128i(r, a);
41064108
}
41074109

@@ -4113,6 +4115,7 @@ mod tests {
41134115
let a: i32 = 7;
41144116
let mut mem = boxed::Box::<i32>::new(-1);
41154117
_mm_stream_si32(ptr::addr_of_mut!(*mem), a);
4118+
_mm_sfence();
41164119
assert_eq!(a, *mem);
41174120
}
41184121

@@ -4809,6 +4812,7 @@ mod tests {
48094812
let mut mem = Memory { data: [-1.0; 2] };
48104813

48114814
_mm_stream_pd(ptr::addr_of_mut!(mem.data[0]), a);
4815+
_mm_sfence();
48124816
for i in 0..2 {
48134817
assert_eq!(mem.data[i], get_m128d(a, i));
48144818
}

crates/core_arch/src/x86/sse4a.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -215,6 +215,7 @@ mod tests {
215215
let x = _mm_setr_pd(3.0, 4.0);
216216

217217
_mm_stream_sd(d, x);
218+
_mm_sfence();
218219
}
219220
assert_eq!(mem.data[0], 3.0);
220221
assert_eq!(mem.data[1], 2.0);
@@ -240,6 +241,7 @@ mod tests {
240241
let x = _mm_setr_ps(5.0, 6.0, 7.0, 8.0);
241242

242243
_mm_stream_ss(d, x);
244+
_mm_sfence();
243245
}
244246
assert_eq!(mem.data[0], 5.0);
245247
assert_eq!(mem.data[1], 2.0);

crates/core_arch/src/x86_64/sse2.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,7 @@ mod tests {
200200
let a: i64 = 7;
201201
let mut mem = boxed::Box::<i64>::new(-1);
202202
_mm_stream_si64(ptr::addr_of_mut!(*mem), a);
203+
_mm_sfence();
203204
assert_eq!(a, *mem);
204205
}
205206

0 commit comments

Comments
 (0)