Skip to content

Commit fd5fc64

Browse files
RalfJungAmanieu
authored andcommitted
set asm attributes
1 parent 25e15c3 commit fd5fc64

File tree

5 files changed

+11
-0
lines changed

5 files changed

+11
-0
lines changed

crates/core_arch/src/x86/avx.rs

+3
Original file line numberDiff line numberDiff line change
@@ -1722,6 +1722,7 @@ pub unsafe fn _mm256_stream_si256(mem_addr: *mut __m256i, a: __m256i) {
17221722
"vmovntps [{mem_addr}], {a}",
17231723
mem_addr = in(reg) mem_addr,
17241724
a = in(ymm_reg) a,
1725+
options(nostack, preserves_flags),
17251726
);
17261727
}
17271728

@@ -1749,6 +1750,7 @@ pub unsafe fn _mm256_stream_pd(mem_addr: *mut f64, a: __m256d) {
17491750
"vmovntps [{mem_addr}], {a}",
17501751
mem_addr = in(reg) mem_addr,
17511752
a = in(ymm_reg) a,
1753+
options(nostack, preserves_flags),
17521754
);
17531755
}
17541756

@@ -1777,6 +1779,7 @@ pub unsafe fn _mm256_stream_ps(mem_addr: *mut f32, a: __m256) {
17771779
"vmovntps [{mem_addr}], {a}",
17781780
mem_addr = in(reg) mem_addr,
17791781
a = in(ymm_reg) a,
1782+
options(nostack, preserves_flags),
17801783
);
17811784
}
17821785

crates/core_arch/src/x86/avx512f.rs

+3
Original file line numberDiff line numberDiff line change
@@ -28018,6 +28018,7 @@ pub unsafe fn _mm512_stream_ps(mem_addr: *mut f32, a: __m512) {
2801828018
"vmovntps [{mem_addr}], {a}",
2801928019
mem_addr = in(reg) mem_addr,
2802028020
a = in(zmm_reg) a,
28021+
options(nostack, preserves_flags),
2802128022
);
2802228023
}
2802328024

@@ -28043,6 +28044,7 @@ pub unsafe fn _mm512_stream_pd(mem_addr: *mut f64, a: __m512d) {
2804328044
"vmovntps [{mem_addr}], {a}",
2804428045
mem_addr = in(reg) mem_addr,
2804528046
a = in(zmm_reg) a,
28047+
options(nostack, preserves_flags),
2804628048
);
2804728049
}
2804828050

@@ -28068,6 +28070,7 @@ pub unsafe fn _mm512_stream_si512(mem_addr: *mut i64, a: __m512i) {
2806828070
"vmovntps [{mem_addr}], {a}",
2806928071
mem_addr = in(reg) mem_addr,
2807028072
a = in(zmm_reg) a,
28073+
options(nostack, preserves_flags),
2807128074
);
2807228075
}
2807328076

crates/core_arch/src/x86/sse.rs

+1
Original file line numberDiff line numberDiff line change
@@ -2006,6 +2006,7 @@ pub unsafe fn _mm_stream_ps(mem_addr: *mut f32, a: __m128) {
20062006
"movntps [{mem_addr}], {a}",
20072007
mem_addr = in(reg) mem_addr,
20082008
a = in(xmm_reg) a,
2009+
options(nostack, preserves_flags),
20092010
);
20102011
}
20112012

crates/core_arch/src/x86/sse2.rs

+3
Original file line numberDiff line numberDiff line change
@@ -1335,6 +1335,7 @@ pub unsafe fn _mm_stream_si128(mem_addr: *mut __m128i, a: __m128i) {
13351335
"movntps [{mem_addr}], {a}",
13361336
mem_addr = in(reg) mem_addr,
13371337
a = in(xmm_reg) a,
1338+
options(nostack, preserves_flags),
13381339
);
13391340
}
13401341

@@ -1361,6 +1362,7 @@ pub unsafe fn _mm_stream_si32(mem_addr: *mut i32, a: i32) {
13611362
"movnti [{mem_addr}], {a:e}", // `:e` for 32bit value
13621363
mem_addr = in(reg) mem_addr,
13631364
a = in(reg) a,
1365+
options(nostack, preserves_flags),
13641366
);
13651367
}
13661368

@@ -2560,6 +2562,7 @@ pub unsafe fn _mm_stream_pd(mem_addr: *mut f64, a: __m128d) {
25602562
"movntps [{mem_addr}], {a}",
25612563
mem_addr = in(reg) mem_addr,
25622564
a = in(xmm_reg) a,
2565+
options(nostack, preserves_flags),
25632566
);
25642567
}
25652568

crates/core_arch/src/x86_64/sse2.rs

+1
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ pub unsafe fn _mm_stream_si64(mem_addr: *mut i64, a: i64) {
8282
"movnti [{mem_addr}], {a}",
8383
mem_addr = in(reg) mem_addr,
8484
a = in(reg) a,
85+
options(nostack, preserves_flags),
8586
);
8687
}
8788

0 commit comments

Comments
 (0)