mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-20 10:24:12 +00:00
Change a place to use an arbitrary value instead of null, when possible
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22605 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -849,13 +849,13 @@ bool llvm::SimplifyCFG(BasicBlock *BB) {
|
|||||||
while (!BB->empty()) {
|
while (!BB->empty()) {
|
||||||
Instruction &I = BB->back();
|
Instruction &I = BB->back();
|
||||||
// If this instruction is used, replace uses with an arbitrary
|
// If this instruction is used, replace uses with an arbitrary
|
||||||
// constant value. Because control flow can't get here, we don't care
|
// value. Because control flow can't get here, we don't care
|
||||||
// what we replace the value with. Note that since this block is
|
// what we replace the value with. Note that since this block is
|
||||||
// unreachable, and all values contained within it must dominate their
|
// unreachable, and all values contained within it must dominate their
|
||||||
// uses, that all uses will eventually be removed.
|
// uses, that all uses will eventually be removed.
|
||||||
if (!I.use_empty())
|
if (!I.use_empty())
|
||||||
// Make all users of this instruction reference the constant instead
|
// Make all users of this instruction use undef instead
|
||||||
I.replaceAllUsesWith(Constant::getNullValue(I.getType()));
|
I.replaceAllUsesWith(UndefValue::get(I.getType()));
|
||||||
|
|
||||||
// Remove the instruction from the basic block
|
// Remove the instruction from the basic block
|
||||||
BB->getInstList().pop_back();
|
BB->getInstList().pop_back();
|
||||||
|
Reference in New Issue
Block a user