Skip to content

Commit 46c5332

Browse files
committed
Auto merge of rust-lang#3622 - TDecking:sse4_2, r=RalfJung
Implement LLVM x86 SSE4.2 intrinsics SSE4.2 is arguably the least important SIMD extension for the x86 ISA, but it should still be supported for the sake of completeness.
2 parents ccb5f52 + 0cd41b9 commit 46c5332

File tree

3 files changed

+949
-0
lines changed

3 files changed

+949
-0
lines changed

src/tools/miri/src/shims/x86/mod.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ mod sse;
1818
mod sse2;
1919
mod sse3;
2020
mod sse41;
21+
mod sse42;
2122
mod ssse3;
2223

2324
impl<'tcx> EvalContextExt<'tcx> for crate::MiriInterpCx<'tcx> {}
@@ -137,6 +138,11 @@ pub(super) trait EvalContextExt<'tcx>: crate::MiriInterpCxExt<'tcx> {
137138
this, link_name, abi, args, dest,
138139
);
139140
}
141+
name if name.starts_with("sse42.") => {
142+
return sse42::EvalContextExt::emulate_x86_sse42_intrinsic(
143+
this, link_name, abi, args, dest,
144+
);
145+
}
140146
name if name.starts_with("aesni.") => {
141147
return aesni::EvalContextExt::emulate_x86_aesni_intrinsic(
142148
this, link_name, abi, args, dest,

0 commit comments

Comments
 (0)