1*0a6a1f1dSLionel Sambuc // RUN: %clang_cc1 -O3 -triple arm64-apple-ios7 -target-feature +neon -ffreestanding -S -o - %s | FileCheck %s
2*0a6a1f1dSLionel Sambuc // REQUIRES: aarch64-registered-target
3*0a6a1f1dSLionel Sambuc /// Test vrecpss_f32, vrecpsd_f64 ARM64 intrinsics
4*0a6a1f1dSLionel Sambuc
5*0a6a1f1dSLionel Sambuc
6*0a6a1f1dSLionel Sambuc #include <arm_neon.h>
7*0a6a1f1dSLionel Sambuc
8*0a6a1f1dSLionel Sambuc // vrecpss_f32 -> FRECPS Sd,Sa,Sb
9*0a6a1f1dSLionel Sambuc //
test_vrecpss_f32(float32_t Vdlow,float32_t Vn)10*0a6a1f1dSLionel Sambuc float32_t test_vrecpss_f32(float32_t Vdlow, float32_t Vn)
11*0a6a1f1dSLionel Sambuc {
12*0a6a1f1dSLionel Sambuc return vrecpss_f32(Vdlow, Vn);
13*0a6a1f1dSLionel Sambuc // CHECK: test_vrecpss_f32:
14*0a6a1f1dSLionel Sambuc // CHECK: frecps s0, s0, s1
15*0a6a1f1dSLionel Sambuc // CHECK-NEXT: ret
16*0a6a1f1dSLionel Sambuc }
17*0a6a1f1dSLionel Sambuc
18*0a6a1f1dSLionel Sambuc // vrecpsd_f64 -> FRECPS Dd,Da,Db
19*0a6a1f1dSLionel Sambuc //
test_vrecpsd_f64(float64_t Vdlow,float64_t Vn)20*0a6a1f1dSLionel Sambuc float64_t test_vrecpsd_f64(float64_t Vdlow, float64_t Vn)
21*0a6a1f1dSLionel Sambuc {
22*0a6a1f1dSLionel Sambuc return vrecpsd_f64(Vdlow, Vn);
23*0a6a1f1dSLionel Sambuc // CHECK: test_vrecpsd_f64:
24*0a6a1f1dSLionel Sambuc // CHECK: frecps d0, d0, d1
25*0a6a1f1dSLionel Sambuc // CHECK-NEXT: ret
26*0a6a1f1dSLionel Sambuc }
27