diff options
author | Kerry McLaughlin <kerry.mclaughlin@arm.com> | 2023-11-01 15:21:08 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-01 15:21:08 +0000 |
commit | c34efe3c2734629b925d9411b3c86a710911a93a (patch) | |
tree | d0971f257bc044d0324637bb4ad6425957caef43 /clang/lib/CodeGen/CodeGenFunction.h | |
parent | 930bc6c7b5f3d1c3a4f2f1a09414700aab526f17 (diff) | |
download | llvm-c34efe3c2734629b925d9411b3c86a710911a93a.zip llvm-c34efe3c2734629b925d9411b3c86a710911a93a.tar.gz llvm-c34efe3c2734629b925d9411b3c86a710911a93a.tar.bz2 |
[AArch64][Clang] Refactor code to emit SVE & SME builtins (#70662)
This patch removes duplicated code in EmitAArch64SVEBuiltinExpr and
EmitAArch64SMEBuiltinExpr by creating a new function called
GetAArch64SVEProcessedOperands which handles splitting up multi-vector
arguments using vector extracts.
These changes are non-functional.
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.h')
-rw-r--r-- | clang/lib/CodeGen/CodeGenFunction.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CodeGenFunction.h b/clang/lib/CodeGen/CodeGenFunction.h index e82115e..ee2c4b1 100644 --- a/clang/lib/CodeGen/CodeGenFunction.h +++ b/clang/lib/CodeGen/CodeGenFunction.h @@ -4311,6 +4311,11 @@ public: llvm::Value *EmitSMELdrStr(const SVETypeFlags &TypeFlags, llvm::SmallVectorImpl<llvm::Value *> &Ops, unsigned IntID); + + void GetAArch64SVEProcessedOperands(unsigned BuiltinID, const CallExpr *E, + SmallVectorImpl<llvm::Value *> &Ops, + SVETypeFlags TypeFlags); + llvm::Value *EmitAArch64SMEBuiltinExpr(unsigned BuiltinID, const CallExpr *E); llvm::Value *EmitAArch64BuiltinExpr(unsigned BuiltinID, const CallExpr *E, |