summaryrefslogtreecommitdiff
path: root/utils/TableGen/IntrinsicEmitter.cpp
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 /utils/TableGen/IntrinsicEmitter.cpp
parent1c5cf1b3785c4e6dcd0b8549008861cb2c4e49ee (diff)
downloadllvm-61fc4cf7aa0b87ceab62082cee8ef5ce3f574ffc.tar.gz
llvm-61fc4cf7aa0b87ceab62082cee8ef5ce3f574ffc.tar.bz2
llvm-61fc4cf7aa0b87ceab62082cee8ef5ce3f574ffc.tar.xz
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 'utils/TableGen/IntrinsicEmitter.cpp')
-rw-r--r--utils/TableGen/IntrinsicEmitter.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/utils/TableGen/IntrinsicEmitter.cpp b/utils/TableGen/IntrinsicEmitter.cpp
index 94d381d466..79874b1629 100644
--- a/utils/TableGen/IntrinsicEmitter.cpp
+++ b/utils/TableGen/IntrinsicEmitter.cpp
@@ -203,7 +203,7 @@ static void EmitTypeGenerate(raw_ostream &OS, const Record *ArgType,
<< "(dyn_cast<VectorType>(Tys[" << Number << "]))";
else
OS << "Tys[" << Number << "]";
- } else if (VT == EVT::iAny || VT == EVT::fAny) {
+ } else if (VT == EVT::iAny || VT == EVT::fAny || VT == EVT::vAny) {
// NOTE: The ArgNo variable here is not the absolute argument number, it is
// the index of the "arbitrary" type in the Tys array passed to the
// Intrinsic::getDeclaration function. Consequently, we only want to
@@ -329,7 +329,7 @@ void IntrinsicEmitter::EmitVerifier(const std::vector<CodeGenIntrinsic> &Ints,
EVT::SimpleValueType VT = getValueType(ArgType->getValueAsDef("VT"));
OS << getEnumName(VT);
- if (VT == EVT::iAny || VT == EVT::fAny || VT == EVT::iPTRAny)
+ if (EVT(VT).isOverloaded())
OverloadedTypeIndices.push_back(j);
if (VT == EVT::isVoid && j != 0 && j != je - 1)
@@ -357,7 +357,7 @@ void IntrinsicEmitter::EmitVerifier(const std::vector<CodeGenIntrinsic> &Ints,
EVT::SimpleValueType VT = getValueType(ArgType->getValueAsDef("VT"));
OS << getEnumName(VT);
- if (VT == EVT::iAny || VT == EVT::fAny || VT == EVT::iPTRAny)
+ if (EVT(VT).isOverloaded())
OverloadedTypeIndices.push_back(j + RetTys.size());
if (VT == EVT::isVoid && j != 0 && j != je - 1)