mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-05 02:07:16 +00:00
Revert the part of r59145 that changed the comment about
virtual registers possibly having multiple kills while still being defined and killed in the same block. If LiveIntervals is manually re-run after two-address lowering, it currently does add extra kills to two-address instructions, but this is considered a bug. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59194 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
bc5cbb8be9
commit
7fc610f073
@ -51,13 +51,16 @@ public:
|
||||
/// throughout, the set of blocks in which the instruction is actually used,
|
||||
/// and the set of non-phi instructions that are the last users of the value.
|
||||
///
|
||||
/// If the value is live throughout any blocks, these blocks are listed in
|
||||
/// AliveBlocks. Blocks where the liveness range ends are not included in
|
||||
/// AliveBlocks, instead being captured by the Kills set. In these blocks,
|
||||
/// the value is live into the block (unless the value is defined and killed
|
||||
/// in the same block) and lives until the specified instruction. Note that
|
||||
/// there cannot ever be a value whose Kills set contains two instructions
|
||||
/// from the same basic block.
|
||||
/// In the common case where a value is defined and killed in the same block,
|
||||
/// There is one killing instruction, and AliveBlocks is empty.
|
||||
///
|
||||
/// Otherwise, the value is live out of the block. If the value is live
|
||||
/// throughout any blocks, these blocks are listed in AliveBlocks. Blocks
|
||||
/// where the liveness range ends are not included in AliveBlocks, instead
|
||||
/// being captured by the Kills set. In these blocks, the value is live into
|
||||
/// the block (unless the value is defined and killed in the same block) and
|
||||
/// lives until the specified instruction. Note that there cannot ever be a
|
||||
/// value whose Kills set contains two instructions from the same basic block.
|
||||
///
|
||||
/// PHI nodes complicate things a bit. If a PHI node is the last user of a
|
||||
/// value in one of its predecessor blocks, it is not listed in the kills set,
|
||||
|
Loading…
Reference in New Issue
Block a user