mirror of
https://github.com/RPCSX/llvm.git
synced 2025-01-23 12:45:47 +00:00
The last use in a block that doesn't have successors
(return or unreachable) is a kill. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67357 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
23d8539d1e
commit
654c98c4f3
@ -131,6 +131,11 @@ LiveValues::Memo &LiveValues::compute(const Value *V) {
|
||||
// Note the block in which this use occurs.
|
||||
M.Used.insert(UseBB);
|
||||
|
||||
// If the use block doesn't have successors, the value can be
|
||||
// considered killed.
|
||||
if (succ_begin(UseBB) == succ_end(UseBB))
|
||||
M.Killed.insert(UseBB);
|
||||
|
||||
// Observe whether the value is used outside of the loop in which
|
||||
// it is defined. Switch to an enclosing loop if necessary.
|
||||
for (; L; L = L->getParentLoop())
|
||||
|
Loading…
x
Reference in New Issue
Block a user