aboutsummaryrefslogtreecommitdiffstats
path: root/lib/VMCore
diff options
context:
space:
mode:
authorBob Wilson <bob.wilson@apple.com>2009-08-11 01:14:02 +0000
committerBob Wilson <bob.wilson@apple.com>2009-08-11 01:14:02 +0000
commit61fc4cf7aa0b87ceab62082cee8ef5ce3f574ffc (patch)
tree6c361f43f73aad64e12ee591fe48a1a42169edb4 /lib/VMCore
parent1c5cf1b3785c4e6dcd0b8549008861cb2c4e49ee (diff)
downloadexternal_llvm-61fc4cf7aa0b87ceab62082cee8ef5ce3f574ffc.zip
external_llvm-61fc4cf7aa0b87ceab62082cee8ef5ce3f574ffc.tar.gz
external_llvm-61fc4cf7aa0b87ceab62082cee8ef5ce3f574ffc.tar.bz2
Add a new overloaded EVT::vAny type for use in TableGen to allow intrinsic
arguments that are vectors of any size and element type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78631 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/VMCore')
-rw-r--r--lib/VMCore/Verifier.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/VMCore/Verifier.cpp b/lib/VMCore/Verifier.cpp
index a601690..ca09952 100644
--- a/lib/VMCore/Verifier.cpp
+++ b/lib/VMCore/Verifier.cpp
@@ -1597,6 +1597,12 @@ bool Verifier::PerformTypeCheck(Intrinsic::ID ID, Function *F, const Type *Ty,
Suffix += "v" + utostr(NumElts);
Suffix += EVT::getEVT(EltTy).getEVTString();
+ } else if (VT == EVT::vAny) {
+ if (!VTy) {
+ CheckFailed(IntrinsicParam(ArgNo, NumRets) + " is not a vector type.", F);
+ return false;
+ }
+ Suffix += ".v" + utostr(NumElts) + EVT::getEVT(EltTy).getEVTString();
} else if (VT == EVT::iPTR) {
if (!isa<PointerType>(Ty)) {
CheckFailed(IntrinsicParam(ArgNo, NumRets) + " is not a "