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:
Chris Lattner
2005-08-02 23:29:23 +00:00
parent aed98fa886
commit f5e982daa8

View File

@ -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();