mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-20 09:30:43 +00:00
When replacing value numbers, make sure to compactify the value # space.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29865 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
bf16982e86
commit
c82b3aab65
@ -470,6 +470,18 @@ void LiveInterval::MergeValueNumberInto(unsigned V1, unsigned V2) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Now that V1 is dead, remove it. If it is the largest value number, just
|
||||||
|
// nuke it (and any other deleted values neighboring it), otherwise mark it as
|
||||||
|
// ~1U so it can be nuked later.
|
||||||
|
if (V1 == NumValues-1) {
|
||||||
|
do {
|
||||||
|
InstDefiningValue.pop_back();
|
||||||
|
--NumValues;
|
||||||
|
} while (InstDefiningValue.back() == ~1U);
|
||||||
|
} else {
|
||||||
|
InstDefiningValue[V1] = ~1U;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user