]> granicus.if.org Git - llvm/commitdiff
[RDF] Only access block live-ins when tracking liveness
authorKrzysztof Parzyszek <kparzysz@codeaurora.org>
Wed, 22 Feb 2017 18:27:36 +0000 (18:27 +0000)
committerKrzysztof Parzyszek <kparzysz@codeaurora.org>
Wed, 22 Feb 2017 18:27:36 +0000 (18:27 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295855 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/Hexagon/RDFGraph.cpp

index d482db3adcda387b854861493a39d04929a9b6b7..2253969290b78af6aece04dbbbabe493ff1a4cf9 100644 (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) {