Enforce stricter liveness rules for PHIs.
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Mon, 25 Jun 2012 18:18:27 +0000 (18:18 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Mon, 25 Jun 2012 18:18:27 +0000 (18:18 +0000)
commita4e6397fd9f2fbbd6affdfb0738813918cb21da0
tree088efa5079749a314a51554e4bf7e4cd41606470
parent5984d2b31fe3c69e46d2b81439a8c3ef0bdf9a91
Enforce stricter liveness rules for PHIs.

Verify that all paths from the entry block to a virtual register read
pass through a def. Enable this check even when MRI->isSSA() is false.

Verify that the live range of a virtual register is live out of all
predecessor blocks, even for PHI-values.

This requires that PHIElimination sometimes inserts IMPLICIT_DEF
instruction in predecessor blocks.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159150 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/MachineVerifier.cpp
test/CodeGen/Generic/undef-phi.ll [new file with mode: 0644]