summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorChad Rosier <mcrosier@codeaurora.org>2013-12-11 21:03:40 +0000
committerChad Rosier <mcrosier@codeaurora.org>2013-12-11 21:03:40 +0000
commitc3e5d72ba83f607d7e1409027f7593c689fc70d0 (patch)
tree2446844292ae908b9f82cc4f824ab359966b7317 /include
parent7dc7cc49a58aeed45e208a9f64f0e47a4fcc6fd6 (diff)
downloadllvm-c3e5d72ba83f607d7e1409027f7593c689fc70d0.tar.gz
llvm-c3e5d72ba83f607d7e1409027f7593c689fc70d0.tar.bz2
llvm-c3e5d72ba83f607d7e1409027f7593c689fc70d0.tar.xz
[AArch64] Refactor the NEON scalar floating-point reciprocal estimate, floating-
point reciprocal exponent, and floating-point reciprocal square root estimate LLVM AArch64 intrinsics to use f32/f64 types, rather than their vector equivalents. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@197066 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/IR/IntrinsicsAArch64.td11
1 files changed, 10 insertions, 1 deletions
diff --git a/include/llvm/IR/IntrinsicsAArch64.td b/include/llvm/IR/IntrinsicsAArch64.td
index 37abbe7db8..fb31452fb2 100644
--- a/include/llvm/IR/IntrinsicsAArch64.td
+++ b/include/llvm/IR/IntrinsicsAArch64.td
@@ -260,8 +260,17 @@ def int_aarch64_neon_fcvtzs :
def int_aarch64_neon_fcvtzu :
Intrinsic<[llvm_anyvector_ty], [llvm_anyfloat_ty], [IntrNoMem]>;
+// Scalar Floating-point Reciprocal Estimate.
+def int_aarch64_neon_vrecpe :
+ Intrinsic<[llvm_anyfloat_ty], [LLVMMatchType<0>], [IntrNoMem]>;
+
// Scalar Floating-point Reciprocal Exponent
-def int_aarch64_neon_vrecpx : Neon_1Arg_Intrinsic;
+def int_aarch64_neon_vrecpx :
+ Intrinsic<[llvm_anyfloat_ty], [LLVMMatchType<0>], [IntrNoMem]>;
+
+// Scalar Floating-point Reciprocal Square Root Estimate
+def int_aarch64_neon_vrsqrte :
+ Intrinsic<[llvm_anyfloat_ty], [LLVMMatchType<0>], [IntrNoMem]>;
class Neon_Cmp_Intrinsic
: Intrinsic<[llvm_anyvector_ty], [llvm_anyvector_ty, llvm_anyvector_ty],