mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-07-21 18:29:45 +00:00
Don't DCE the landingpad instruction.
The landingpad instruction can be removed only when its invokes are removed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138930 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
65088e7d96
commit
1893cd3131
@ -1577,6 +1577,11 @@ bool InstCombiner::DoOneIteration(Function &F, unsigned Iteration) {
|
||||
while (Term != BB->begin()) { // Remove instrs bottom-up
|
||||
BasicBlock::iterator I = Term; --I;
|
||||
|
||||
// Don't remove the landingpad instruction. This should be removed
|
||||
// only if its invokes are also removed.
|
||||
if (isa<LandingPadInst>(I))
|
||||
continue;
|
||||
|
||||
DEBUG(errs() << "IC: DCE: " << *I << '\n');
|
||||
// A debug intrinsic shouldn't force another iteration if we weren't
|
||||
// going to do one without it.
|
||||
|
Loading…
Reference in New Issue
Block a user