diff --git a/library/stdarch/crates/core_arch/src/x86/avx.rs b/library/stdarch/crates/core_arch/src/x86/avx.rs index 3108aa4d4a3f..82fe0acd23e6 100644 --- a/library/stdarch/crates/core_arch/src/x86/avx.rs +++ b/library/stdarch/crates/core_arch/src/x86/avx.rs @@ -1722,6 +1722,7 @@ pub unsafe fn _mm256_stream_si256(mem_addr: *mut __m256i, a: __m256i) { "vmovntps [{mem_addr}], {a}", mem_addr = in(reg) mem_addr, a = in(ymm_reg) a, + options(nostack, preserves_flags), ); } @@ -1749,6 +1750,7 @@ pub unsafe fn _mm256_stream_pd(mem_addr: *mut f64, a: __m256d) { "vmovntps [{mem_addr}], {a}", mem_addr = in(reg) mem_addr, a = in(ymm_reg) a, + options(nostack, preserves_flags), ); } @@ -1777,6 +1779,7 @@ pub unsafe fn _mm256_stream_ps(mem_addr: *mut f32, a: __m256) { "vmovntps [{mem_addr}], {a}", mem_addr = in(reg) mem_addr, a = in(ymm_reg) a, + options(nostack, preserves_flags), ); } diff --git a/library/stdarch/crates/core_arch/src/x86/avx512f.rs b/library/stdarch/crates/core_arch/src/x86/avx512f.rs index 252f826e355d..886c533d7996 100644 --- a/library/stdarch/crates/core_arch/src/x86/avx512f.rs +++ b/library/stdarch/crates/core_arch/src/x86/avx512f.rs @@ -28018,6 +28018,7 @@ pub unsafe fn _mm512_stream_ps(mem_addr: *mut f32, a: __m512) { "vmovntps [{mem_addr}], {a}", mem_addr = in(reg) mem_addr, a = in(zmm_reg) a, + options(nostack, preserves_flags), ); } @@ -28043,6 +28044,7 @@ pub unsafe fn _mm512_stream_pd(mem_addr: *mut f64, a: __m512d) { "vmovntps [{mem_addr}], {a}", mem_addr = in(reg) mem_addr, a = in(zmm_reg) a, + options(nostack, preserves_flags), ); } @@ -28068,6 +28070,7 @@ pub unsafe fn _mm512_stream_si512(mem_addr: *mut i64, a: __m512i) { "vmovntps [{mem_addr}], {a}", mem_addr = in(reg) mem_addr, a = in(zmm_reg) a, + options(nostack, preserves_flags), ); } diff --git a/library/stdarch/crates/core_arch/src/x86/sse.rs b/library/stdarch/crates/core_arch/src/x86/sse.rs index ca560dc779a1..ecba71fb589d 100644 --- a/library/stdarch/crates/core_arch/src/x86/sse.rs +++ b/library/stdarch/crates/core_arch/src/x86/sse.rs @@ -2006,6 +2006,7 @@ pub unsafe fn _mm_stream_ps(mem_addr: *mut f32, a: __m128) { "movntps [{mem_addr}], {a}", mem_addr = in(reg) mem_addr, a = in(xmm_reg) a, + options(nostack, preserves_flags), ); } diff --git a/library/stdarch/crates/core_arch/src/x86/sse2.rs b/library/stdarch/crates/core_arch/src/x86/sse2.rs index 320f26b3f4f8..639ea78894db 100644 --- a/library/stdarch/crates/core_arch/src/x86/sse2.rs +++ b/library/stdarch/crates/core_arch/src/x86/sse2.rs @@ -1335,6 +1335,7 @@ pub unsafe fn _mm_stream_si128(mem_addr: *mut __m128i, a: __m128i) { "movntps [{mem_addr}], {a}", mem_addr = in(reg) mem_addr, a = in(xmm_reg) a, + options(nostack, preserves_flags), ); } @@ -1361,6 +1362,7 @@ pub unsafe fn _mm_stream_si32(mem_addr: *mut i32, a: i32) { "movnti [{mem_addr}], {a:e}", // `:e` for 32bit value mem_addr = in(reg) mem_addr, a = in(reg) a, + options(nostack, preserves_flags), ); } @@ -2560,6 +2562,7 @@ pub unsafe fn _mm_stream_pd(mem_addr: *mut f64, a: __m128d) { "movntps [{mem_addr}], {a}", mem_addr = in(reg) mem_addr, a = in(xmm_reg) a, + options(nostack, preserves_flags), ); } diff --git a/library/stdarch/crates/core_arch/src/x86_64/sse2.rs b/library/stdarch/crates/core_arch/src/x86_64/sse2.rs index 55d856afec44..22788b275aa0 100644 --- a/library/stdarch/crates/core_arch/src/x86_64/sse2.rs +++ b/library/stdarch/crates/core_arch/src/x86_64/sse2.rs @@ -82,6 +82,7 @@ pub unsafe fn _mm_stream_si64(mem_addr: *mut i64, a: i64) { "movnti [{mem_addr}], {a}", mem_addr = in(reg) mem_addr, a = in(reg) a, + options(nostack, preserves_flags), ); }