diff options
author | Devang Patel <dpatel@apple.com> | 2007-10-17 20:12:58 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2007-10-17 20:12:58 +0000 |
commit | 84458323a254c4ee31aae553f1a8b66742cd0562 (patch) | |
tree | e6c98b3ee1e06cc7c8a675d9f8d2ad6c235d44df /lib/Transforms/IPO/RaiseAllocations.cpp | |
parent | 469b7a4ec114c9b7ecb438b253c489542ba1c96e (diff) | |
download | llvm-84458323a254c4ee31aae553f1a8b66742cd0562.tar.gz llvm-84458323a254c4ee31aae553f1a8b66742cd0562.tar.bz2 llvm-84458323a254c4ee31aae553f1a8b66742cd0562.tar.xz |
Do not raise free() call that is called through invoke instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43083 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/IPO/RaiseAllocations.cpp')
-rw-r--r-- | lib/Transforms/IPO/RaiseAllocations.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/Transforms/IPO/RaiseAllocations.cpp b/lib/Transforms/IPO/RaiseAllocations.cpp index 44702bc817..e6d8723f45 100644 --- a/lib/Transforms/IPO/RaiseAllocations.cpp +++ b/lib/Transforms/IPO/RaiseAllocations.cpp @@ -204,6 +204,8 @@ bool RaiseAllocations::runOnModule(Module &M) { Users.pop_back(); if (Instruction *I = dyn_cast<Instruction>(U)) { + if (isa<InvokeInst>(I)) + continue; CallSite CS = CallSite::get(I); if (CS.getInstruction() && !CS.arg_empty() && (CS.getCalledFunction() == FreeFunc || |