diff options
author | Sander de Smalen <sander.desmalen@arm.com> | 2020-05-04 20:17:57 +0100 |
---|---|---|
committer | Sander de Smalen <sander.desmalen@arm.com> | 2020-05-04 20:38:47 +0100 |
commit | 6b90a6887d25e3375bb916a3ed09f7ccec819d0c (patch) | |
tree | 6c7e1c62a35706e2540469862b66962f59eda0c8 /clang/lib/CodeGen/CodeGenFunction.h | |
parent | 1eb160fe8dc4c3359289853415730a73bfe4bb23 (diff) | |
download | llvm-6b90a6887d25e3375bb916a3ed09f7ccec819d0c.zip llvm-6b90a6887d25e3375bb916a3ed09f7ccec819d0c.tar.gz llvm-6b90a6887d25e3375bb916a3ed09f7ccec819d0c.tar.bz2 |
[SveEmitter] Add builtins for svdupq and svdupq_lane
* svdupq builtins that duplicate scalars to every quadword of a vector
are defined using builtins for svld1rq (load and replicate quadword).
* svdupq builtins that duplicate boolean values to fill a predicate vector
are defined using `svcmpne`.
Reviewers: SjoerdMeijer, efriedma, ctetreau
Reviewed By: efriedma
Tags: #clang
Differential Revision: https://reviews.llvm.org/D78750
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.h')
-rw-r--r-- | clang/lib/CodeGen/CodeGenFunction.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CodeGenFunction.h b/clang/lib/CodeGen/CodeGenFunction.h index 2639fd8..adc7b2e 100644 --- a/clang/lib/CodeGen/CodeGenFunction.h +++ b/clang/lib/CodeGen/CodeGenFunction.h @@ -3918,6 +3918,7 @@ public: llvm::Type *getEltType(SVETypeFlags TypeFlags); llvm::ScalableVectorType *getSVEType(const SVETypeFlags &TypeFlags); llvm::ScalableVectorType *getSVEPredType(SVETypeFlags TypeFlags); + llvm::Value *EmitSVEAllTruePred(SVETypeFlags TypeFlags); llvm::Value *EmitSVEDupX(llvm::Value *Scalar); llvm::Value *EmitSVEPredicateCast(llvm::Value *Pred, llvm::ScalableVectorType *VTy); |