mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
Delete stoppoints that occur for the same source line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17970 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
1085548d35
commit
954f66a8cd
@ -182,7 +182,7 @@ namespace {
|
||||
assert(I.use_empty() && "Cannot erase instruction that is used!");
|
||||
AddUsesToWorkList(I);
|
||||
removeFromWorkList(&I);
|
||||
I.getParent()->getInstList().erase(&I);
|
||||
I.eraseFromParent();
|
||||
return 0; // Don't do anything with FI
|
||||
}
|
||||
|
||||
@ -3217,6 +3217,16 @@ Instruction *InstCombiner::visitCallInst(CallInst &CI) {
|
||||
}
|
||||
|
||||
if (Changed) return &CI;
|
||||
} else if (DbgStopPointInst *SPI = dyn_cast<DbgStopPointInst>(&CI)) {
|
||||
// If this stoppoint is at the same source location as the previous
|
||||
// stoppoint in the chain, it is not needed.
|
||||
if (DbgStopPointInst *PrevSPI =
|
||||
dyn_cast<DbgStopPointInst>(SPI->getChain()))
|
||||
if (SPI->getLineNo() == PrevSPI->getLineNo() &&
|
||||
SPI->getColNo() == PrevSPI->getColNo()) {
|
||||
SPI->replaceAllUsesWith(PrevSPI);
|
||||
return EraseInstFromFunction(CI);
|
||||
}
|
||||
}
|
||||
|
||||
return visitCallSite(&CI);
|
||||
|
Loading…
Reference in New Issue
Block a user