diff options
-rw-r--r-- | lib/VMCore/Function.cpp | 6 | ||||
-rw-r--r-- | lib/VMCore/Verifier.cpp | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/lib/VMCore/Function.cpp b/lib/VMCore/Function.cpp index 89195a34a4..6d78711411 100644 --- a/lib/VMCore/Function.cpp +++ b/lib/VMCore/Function.cpp @@ -164,6 +164,12 @@ unsigned Function::getIntrinsicID() const { return 0; // All intrinsics start with 'llvm.' switch (getName()[5]) { + case 'a': + if (getName() == "llvm.alpha.ctlz") return LLVMIntrinsic::alpha_ctlz; + if (getName() == "llvm.alpha.cttz") return LLVMIntrinsic::alpha_cttz; + if (getName() == "llvm.alpha.ctpop") return LLVMIntrinsic::alpha_ctpop; + if (getName() == "llvm.alpha.umulh") return LLVMIntrinsic::alpha_umulh; + break; case 'l': if (getName() == "llvm.longjmp") return LLVMIntrinsic::longjmp; break; diff --git a/lib/VMCore/Verifier.cpp b/lib/VMCore/Verifier.cpp index be839ab168..84556cddc1 100644 --- a/lib/VMCore/Verifier.cpp +++ b/lib/VMCore/Verifier.cpp @@ -521,6 +521,12 @@ void Verifier::visitIntrinsicFunctionCall(LLVMIntrinsic::ID ID, CallInst &CI) { case LLVMIntrinsic::va_copy: NumArgs = 2; break; case LLVMIntrinsic::setjmp: NumArgs = 1; break; case LLVMIntrinsic::longjmp: NumArgs = 2; break; + + case LLVMIntrinsic::alpha_ctlz: NumArgs = 1; break; + case LLVMIntrinsic::alpha_cttz: NumArgs = 1; break; + case LLVMIntrinsic::alpha_ctpop: NumArgs = 1; break; + case LLVMIntrinsic::alpha_umulh: NumArgs = 2; break; + case LLVMIntrinsic::not_intrinsic: assert(0 && "Invalid intrinsic!"); NumArgs = 0; break; } |