Skip to content

Commit f1d3b02

Browse files
committed
Add x86 & arm reciprocal approximation intrinsics.
1 parent 78eead6 commit f1d3b02

File tree

2 files changed

+2
-0
lines changed

2 files changed

+2
-0
lines changed

src/librustc_platform_intrinsics/arm.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ pub fn find<'tcx>(_tcx: &ty::ctxt<'tcx>, name: &str) -> Option<Intrinsic> {
3535
"vsqrtq_f32" => plain!("llvm.sqrt.v4f32", (f32x4) -> f32x4),
3636
"vsqrtq_f64" => plain!("llvm.sqrt.v2f64", (f64x2) -> f64x2),
3737

38+
"vrecpeq_f32" => p!("vrecpe.v4f32", (f32x4) -> f32x4),
3839
"vrsqrteq_f32" => p!("vrsqrte.v4f32", (f32x4) -> f32x4),
3940
"vrsqrteq_f64" => p!("vrsqrte.v2f64", (f64x2) -> f64x2),
4041

src/librustc_platform_intrinsics/x86.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ pub fn find<'tcx>(_tcx: &ty::ctxt<'tcx>, name: &str) -> Option<Intrinsic> {
2424
"mm_movemask_epi8" => p!("sse2.pmovmskb.128", (i8x16) -> i32),
2525

2626
"mm_rsqrt_ps" => p!("sse.rsqrt.ps", (f32x4) -> f32x4),
27+
"mm_rcp_ps" => p!("sse.rcp.ps", (f32x4) -> f32x4),
2728

2829
"mm_sqrt_ps" => plain!("llvm.sqrt.v4f32", (f32x4) -> f32x4),
2930
"mm_sqrt_pd" => plain!("llvm.sqrt.v2f64", (f64x2) -> f64x2),

0 commit comments

Comments
 (0)