diff options
| author | sayantn <sayantn05@gmail.com> | 2025-06-05 20:41:41 +0530 |
|---|---|---|
| committer | sayantn <sayantn05@gmail.com> | 2025-06-15 04:33:56 +0530 |
| commit | 2ffa1dd392c1fe9c23a2f11f7b7a293a744c05ce (patch) | |
| tree | a20686fc8920c7e96c8ef80abacc340caddc12cf /compiler/rustc_codegen_cranelift | |
| parent | 2038405ff7020904c21c73331f9c3a3d27f75470 (diff) | |
| download | rust-2ffa1dd392c1fe9c23a2f11f7b7a293a744c05ce.tar.gz rust-2ffa1dd392c1fe9c23a2f11f7b7a293a744c05ce.zip | |
Implement `simd_round_ties_even` for miri, cg_clif and cg_gcc
Diffstat (limited to 'compiler/rustc_codegen_cranelift')
| -rw-r--r-- | compiler/rustc_codegen_cranelift/src/intrinsics/simd.rs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/compiler/rustc_codegen_cranelift/src/intrinsics/simd.rs b/compiler/rustc_codegen_cranelift/src/intrinsics/simd.rs index 46a441488fa..f928ad8bc02 100644 --- a/compiler/rustc_codegen_cranelift/src/intrinsics/simd.rs +++ b/compiler/rustc_codegen_cranelift/src/intrinsics/simd.rs @@ -495,7 +495,8 @@ pub(super) fn codegen_simd_intrinsic_call<'tcx>( | sym::simd_flog | sym::simd_flog10 | sym::simd_flog2 - | sym::simd_round => { + | sym::simd_round + | sym::simd_round_ties_even => { intrinsic_args!(fx, args => (a); intrinsic); if !a.layout().ty.is_simd() { @@ -526,6 +527,8 @@ pub(super) fn codegen_simd_intrinsic_call<'tcx>( (sym::simd_flog2, types::F64) => "log2", (sym::simd_round, types::F32) => "roundf", (sym::simd_round, types::F64) => "round", + (sym::simd_round_ties_even, types::F32) => "rintf", + (sym::simd_round_ties_even, types::F64) => "rint", _ => unreachable!("{:?}", intrinsic), }; fx.lib_call( |
