diff options
author | Sander de Smalen <sander.desmalen@arm.com> | 2020-04-22 15:00:01 +0100 |
---|---|---|
committer | Sander de Smalen <sander.desmalen@arm.com> | 2020-04-22 16:42:08 +0100 |
commit | 662cbaf6476b7cc58d0d71ff98d95d00ce5b420e (patch) | |
tree | 41dc2dfbea0da7751746870d5a776910aacd7016 /clang/lib/CodeGen/CodeGenFunction.h | |
parent | 1b6b05a2501a8ad2cd35d275c03edb63dffb5cb7 (diff) | |
download | llvm-662cbaf6476b7cc58d0d71ff98d95d00ce5b420e.zip llvm-662cbaf6476b7cc58d0d71ff98d95d00ce5b420e.tar.gz llvm-662cbaf6476b7cc58d0d71ff98d95d00ce5b420e.tar.bz2 |
[SveEmitter] Add IsOverloadNone flag and builtins for svpfalse and svcnt[bhwd]_pat
Add the IsOverloadNone flag to tell CGBuiltin that it does not have
an overloaded type. This is used for e.g. svpfalse which does
not take any arguments and always returns a svbool_t.
This patch also adds builtins for svcntb_pat, svcnth_pat, svcntw_pat
and svcntd_pat, as those don't require custom codegen.
Reviewers: SjoerdMeijer, efriedma, rovka
Reviewed By: efriedma
Tags: #clang
Differential Revision: https://reviews.llvm.org/D77596
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.h')
-rw-r--r-- | clang/lib/CodeGen/CodeGenFunction.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CodeGenFunction.h b/clang/lib/CodeGen/CodeGenFunction.h index 6d9415d..7e2624a 100644 --- a/clang/lib/CodeGen/CodeGenFunction.h +++ b/clang/lib/CodeGen/CodeGenFunction.h @@ -3908,6 +3908,8 @@ public: /// pointer operand. llvm::Type *SVEBuiltinMemEltTy(SVETypeFlags TypeFlags); + SmallVector<llvm::Type *, 2> getSVEOverloadTypes(SVETypeFlags TypeFlags, + ArrayRef<llvm::Value *> Ops); llvm::Type *getEltType(SVETypeFlags TypeFlags); llvm::VectorType *getSVEType(const SVETypeFlags &TypeFlags); llvm::Value *EmitSVEDupX(llvm::Value *Scalar); |