llvm.org GIT mirror llvm / 7fc610f
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 Dan Gohman 11 years ago
1 changed file(s) with 10 addition(s) and 7 deletion(s). Raw diff Collapse all Expand all
5050 /// throughout, the set of blocks in which the instruction is actually used,
5151 /// and the set of non-phi instructions that are the last users of the value.
5252 ///
53 /// If the value is live throughout any blocks, these blocks are listed in
54 /// AliveBlocks. Blocks where the liveness range ends are not included in
55 /// AliveBlocks, instead being captured by the Kills set. In these blocks,
56 /// the value is live into the block (unless the value is defined and killed
57 /// in the same block) and lives until the specified instruction. Note that
58 /// there cannot ever be a value whose Kills set contains two instructions
59 /// from the same basic block.
53 /// In the common case where a value is defined and killed in the same block,
54 /// There is one killing instruction, and AliveBlocks is empty.
55 ///
56 /// Otherwise, the value is live out of the block. If the value is live
57 /// throughout any blocks, these blocks are listed in AliveBlocks. Blocks
58 /// where the liveness range ends are not included in AliveBlocks, instead
59 /// being captured by the Kills set. In these blocks, the value is live into
60 /// the block (unless the value is defined and killed in the same block) and
61 /// lives until the specified instruction. Note that there cannot ever be a
62 /// value whose Kills set contains two instructions from the same basic block.
6063 ///
6164 /// PHI nodes complicate things a bit. If a PHI node is the last user of a
6265 /// value in one of its predecessor blocks, it is not listed in the kills set,