diff options
author | Owen Anderson <resistor@mac.com> | 2009-06-12 21:50:22 +0000 |
---|---|---|
committer | Owen Anderson <resistor@mac.com> | 2009-06-12 21:50:22 +0000 |
commit | eaac7a42fed0daf7e3aac61765f8fccd2702f695 (patch) | |
tree | 2bad9dfb7313c11f22956d36202573b0163f3fa7 /llvm/lib/CodeGen | |
parent | d0428da39869eeca2c8bd49ef493cfdb2ede6542 (diff) | |
download | bcm5719-llvm-eaac7a42fed0daf7e3aac61765f8fccd2702f695.tar.gz bcm5719-llvm-eaac7a42fed0daf7e3aac61765f8fccd2702f695.zip |
This is supposed to be a preorder numbering of the dominator tree, not the CFG.
llvm-svn: 73257
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r-- | llvm/lib/CodeGen/LazyLiveness.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/llvm/lib/CodeGen/LazyLiveness.cpp b/llvm/lib/CodeGen/LazyLiveness.cpp index 85817da2e4f..4b2d737e6d3 100644 --- a/llvm/lib/CodeGen/LazyLiveness.cpp +++ b/llvm/lib/CodeGen/LazyLiveness.cpp @@ -62,13 +62,14 @@ bool LazyLiveness::runOnMachineFunction(MachineFunction &mf) { preorder.clear(); MRI = &mf.getRegInfo(); + MachineDominatorTree& MDT = getAnalysis<MachineDominatorTree>(); // Step 0: Compute preorder numbering for all MBBs. unsigned num = 0; - for (df_iterator<MachineBasicBlock*> DI = df_begin(&*mf.begin()); - DI != df_end(&*mf.begin()); ++DI) { - preorder[*DI] = num++; - rev_preorder.push_back(*DI); + for (df_iterator<MachineDomTreeNode*> DI = df_begin(MDT.getRootNode()); + DI != df_end(MDT.getRootNode()); ++DI) { + preorder[(*DI)->getBlock()] = num++; + rev_preorder.push_back((*DI)->getBlock()); } // Step 1: Compute the transitive closure of the CFG, ignoring backedges. |