diff options
Diffstat (limited to 'lib/CodeGen/LiveVariables.cpp')
-rw-r--r-- | lib/CodeGen/LiveVariables.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/lib/CodeGen/LiveVariables.cpp b/lib/CodeGen/LiveVariables.cpp index 5898cb2255..80fab5c415 100644 --- a/lib/CodeGen/LiveVariables.cpp +++ b/lib/CodeGen/LiveVariables.cpp @@ -178,9 +178,8 @@ bool LiveVariables::runOnMachineFunction(MachineFunction &MF) { } // Build BBMap... - unsigned BBNum = 0; for (MachineFunction::iterator I = MF.begin(), E = MF.end(); I != E; ++I) - BBMap[I] = BBNum++; + BBMap[I] = I->getNumber(); // PhysRegInfo - Keep track of which instruction was the last use of a // physical register. This is a purely local property, because all physical @@ -201,8 +200,9 @@ bool LiveVariables::runOnMachineFunction(MachineFunction &MF) { // nodes, which are treated as a special case). // MachineBasicBlock *Entry = MF.begin(); - for (df_iterator<MachineBasicBlock*> DFI = df_begin(Entry), E = df_end(Entry); - DFI != E; ++DFI) { + std::set<MachineBasicBlock*> Visited; + for (df_ext_iterator<MachineBasicBlock*> DFI = df_ext_begin(Entry, Visited), + E = df_ext_end(Entry, Visited); DFI != E; ++DFI) { MachineBasicBlock *MBB = *DFI; unsigned BBNum = getMachineBasicBlockIndex(MBB); @@ -310,7 +310,7 @@ bool LiveVariables::runOnMachineFunction(MachineFunction &MF) { RegistersKilled.insert(std::make_pair(VirtRegInfo[i].Kills[j].second, i + MRegisterInfo::FirstVirtualRegister)); } - + return false; } |