mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-04-01 03:33:42 +00:00
Revert my previous change on Local.cpp, instead, fix the bug on scalarrepl.
If the instruction has no users, it is also not only used by debug info and should not be deleted. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67194 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
6b2c7ae2c9
commit
16767c6b49
@ -1223,7 +1223,7 @@ void SROA::CleanupAllocaUsers(AllocationInst *AI) {
|
||||
CleanupGEP(GEPI);
|
||||
else if (Instruction *I = dyn_cast<Instruction>(U)) {
|
||||
SmallVector<DbgInfoIntrinsic *, 2> DbgInUses;
|
||||
if (OnlyUsedByDbgInfoIntrinsics(I, &DbgInUses)) {
|
||||
if (!I->use_empty() && OnlyUsedByDbgInfoIntrinsics(I, &DbgInUses)) {
|
||||
// Safe to remove debug info uses.
|
||||
while (!DbgInUses.empty()) {
|
||||
DbgInfoIntrinsic *DI = DbgInUses.back(); DbgInUses.pop_back();
|
||||
|
@ -262,9 +262,6 @@ bool llvm::OnlyUsedByDbgInfoIntrinsics(Instruction *I,
|
||||
if (DbgInUses)
|
||||
DbgInUses->clear();
|
||||
|
||||
if (I->use_empty())
|
||||
return false;
|
||||
|
||||
for (Value::use_iterator UI = I->use_begin(), UE = I->use_end(); UI != UE;
|
||||
++UI) {
|
||||
if (DbgInfoIntrinsic *DI = dyn_cast<DbgInfoIntrinsic>(*UI)) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user