diff options
| author | Krzysztof Parzyszek <kparzysz@codeaurora.org> | 2018-06-26 14:37:16 +0000 |
|---|---|---|
| committer | Krzysztof Parzyszek <kparzysz@codeaurora.org> | 2018-06-26 14:37:16 +0000 |
| commit | 70f027022cd1f8de8df92d576ed330741a1ec698 (patch) | |
| tree | 319e33af87dcbcf5e666d22e518baa31294bd78b /llvm/lib/CodeGen/LiveRangeCalc.h | |
| parent | 96da1ca58493d730e6d48b37085b06ccdf1204fd (diff) | |
| download | bcm5719-llvm-70f027022cd1f8de8df92d576ed330741a1ec698.tar.gz bcm5719-llvm-70f027022cd1f8de8df92d576ed330741a1ec698.zip | |
Account for undef values from predecessors in extendSegmentsToUses
It is legal for a PHI node not to have a live value in a predecessor
as long as the end of the predecessor is jointly dominated by an undef
value.
llvm-svn: 335607
Diffstat (limited to 'llvm/lib/CodeGen/LiveRangeCalc.h')
| -rw-r--r-- | llvm/lib/CodeGen/LiveRangeCalc.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/LiveRangeCalc.h b/llvm/lib/CodeGen/LiveRangeCalc.h index c4914f23f56..b8502ac880e 100644 --- a/llvm/lib/CodeGen/LiveRangeCalc.h +++ b/llvm/lib/CodeGen/LiveRangeCalc.h @@ -282,6 +282,15 @@ public: /// Every predecessor of a live-in block must have been given a value with /// setLiveOutValue, the value may be null for live-trough blocks. void calculateValues(); + + /// A diagnostic function to check if the end of the block @p MBB is + /// jointly dominated by the blocks corresponding to the slot indices + /// in @p Defs. This function is mainly for use in self-verification + /// checks. + LLVM_ATTRIBUTE_UNUSED + static bool isJointlyDominated(const MachineBasicBlock *MBB, + ArrayRef<SlotIndex> Defs, + const SlotIndexes &Indexes); }; } // end namespace llvm |

