diff options
author | Tim Northover <tnorthover@apple.com> | 2014-01-30 14:47:57 +0000 |
---|---|---|
committer | Tim Northover <tnorthover@apple.com> | 2014-01-30 14:47:57 +0000 |
commit | ac85c341ae905eff075693cf9bb4138df91604ef (patch) | |
tree | e903ec8e1997ad9907ec25d717fd451f5e808c00 /clang/lib/CodeGen/CodeGenFunction.h | |
parent | c322f838bc34e9b67c430004f5d5ebe8c91642e7 (diff) | |
download | llvm-ac85c341ae905eff075693cf9bb4138df91604ef.zip llvm-ac85c341ae905eff075693cf9bb4138df91604ef.tar.gz llvm-ac85c341ae905eff075693cf9bb4138df91604ef.tar.bz2 |
ARM & AArch64: fully share NEON implementation of permutation intrinsics
As a starting point, this moves the CodeGen for NEON permutation
instructions (vtrn, vzip, vuzp) into a new shared function.
llvm-svn: 200471
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.h')
-rw-r--r-- | clang/lib/CodeGen/CodeGenFunction.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CodeGenFunction.h b/clang/lib/CodeGen/CodeGenFunction.h index ff3746a..ac583e4 100644 --- a/clang/lib/CodeGen/CodeGenFunction.h +++ b/clang/lib/CodeGen/CodeGenFunction.h @@ -2177,6 +2177,9 @@ public: llvm::Value *EmitAArch64CompareBuiltinExpr(llvm::Value *Op, llvm::Type *Ty); llvm::Value *EmitAArch64BuiltinExpr(unsigned BuiltinID, const CallExpr *E); llvm::Value *EmitARMBuiltinExpr(unsigned BuiltinID, const CallExpr *E); + llvm::Value *EmitCommonNeonBuiltinExpr(unsigned BuiltinID, const CallExpr *E, + SmallVectorImpl<llvm::Value *> &Ops, + llvm::VectorType *VTy); llvm::Value *EmitNeonCall(llvm::Function *F, SmallVectorImpl<llvm::Value*> &O, const char *name, |