[RDF] Only access block live-ins when tracking liveness

llvm-svn: 295855
This commit is contained in:
Krzysztof Parzyszek 2017-02-22 18:27:36 +00:00
parent 5ddd2a5bda
commit ba36b92bef
1 changed files with 4 additions and 2 deletions

View File

@ -907,8 +907,10 @@ void DataFlowGraph::build(unsigned Options) {
assert(EntryB.pred_empty() && "Function entry block has predecessors");
for (auto I = MRI.livein_begin(), E = MRI.livein_end(); I != E; ++I)
LiveIns.insert(RegisterRef(I->first));
for (auto I : EntryB.liveins())
LiveIns.insert(RegisterRef(I.PhysReg, I.LaneMask));
if (MRI.tracksLiveness()) {
for (auto I : EntryB.liveins())
LiveIns.insert(RegisterRef(I.PhysReg, I.LaneMask));
}
// Add function-entry phi nodes for the live-in registers.
for (std::pair<RegisterId,LaneBitmask> P : LiveIns) {