aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJim Laskey <jlaskey@mac.com>2006-03-14 02:00:35 +0000
committerJim Laskey <jlaskey@mac.com>2006-03-14 02:00:35 +0000
commit5a588a96369bd7e3edb918395a997009d94c7e6e (patch)
tree2e97648d5b1867e5e9f0e4680da6006fa3b1e089
parentea6f8ce2a32dbda98121f767caa38d10d9ab787d (diff)
downloadexternal_llvm-5a588a96369bd7e3edb918395a997009d94c7e6e.zip
external_llvm-5a588a96369bd7e3edb918395a997009d94c7e6e.tar.gz
external_llvm-5a588a96369bd7e3edb918395a997009d94c7e6e.tar.bz2
1. Handle removal of all arguments for a morphed intrinsic.
2. Remove the declaration of llvm.dbg.declare. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26745 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/VMCore/AutoUpgrade.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/VMCore/AutoUpgrade.cpp b/lib/VMCore/AutoUpgrade.cpp
index 08f6869..3dde1d7 100644
--- a/lib/VMCore/AutoUpgrade.cpp
+++ b/lib/VMCore/AutoUpgrade.cpp
@@ -97,6 +97,9 @@ static Function *getUpgradedIntrinsic(Function *F) {
if (F->getReturnType() != Type::VoidTy) {
return M->getOrInsertFunction(Name, Type::VoidTy, NULL);
}
+ } else if (Name == "llvm.dbg.declare") {
+ F->setName("");
+ return NULL;
}
break;
case 'i':
@@ -230,7 +233,7 @@ void llvm::UpgradeIntrinsicCall(CallInst *CI, Function *NewFn) {
} else
Oprnds.push_back(UndefValue::get(NewFnTy->getParamType(i)));
}
- } else {
+ } else if (N) {
assert(N == (CI->getNumOperands() - 1) &&
"Upgraded function needs permutation");
for (unsigned i = 0; i != N; ++i) {