summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2010-04-14 16:32:56 +0000
committerDan Gohman <gohman@apple.com>2010-04-14 16:32:56 +0000
commitde4c0a7da7cfa1693ad9e6e09969003b610af08a (patch)
tree2eb7bc720eabce16d7851a597cf7e9101115be81
parentd0d8275cb264b17bed836ccd35c923476a236426 (diff)
downloadllvm-de4c0a7da7cfa1693ad9e6e09969003b610af08a.tar.gz
llvm-de4c0a7da7cfa1693ad9e6e09969003b610af08a.tar.bz2
llvm-de4c0a7da7cfa1693ad9e6e09969003b610af08a.tar.xz
Sink landing-pad marking code out of
SelectionDAGISel::runOnMachineFunction into FunctionLowering. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101252 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp5
-rw-r--r--lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp5
2 files changed, 5 insertions, 5 deletions
diff --git a/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp b/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
index 04c27e7c15..d7ed46a08a 100644
--- a/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
+++ b/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
@@ -232,6 +232,11 @@ void FunctionLoweringInfo::set(Function &fn, MachineFunction &mf,
}
}
}
+
+ // Mark landing pad blocks.
+ for (BB = Fn->begin(); BB != EB; ++BB)
+ if (InvokeInst *Invoke = dyn_cast<InvokeInst>(BB->getTerminator()))
+ MBBMap[Invoke->getSuccessor(1)]->setIsLandingPad();
}
/// clear - Clear out all the function-specific state. This returns this
diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
index c7cc695d6b..6067b1fded 100644
--- a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
+++ b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
@@ -332,11 +332,6 @@ bool SelectionDAGISel::runOnMachineFunction(MachineFunction &mf) {
FuncInfo->set(Fn, *MF, EnableFastISel);
SDB->init(GFI, *AA);
- for (Function::iterator I = Fn.begin(), E = Fn.end(); I != E; ++I)
- if (InvokeInst *Invoke = dyn_cast<InvokeInst>(I->getTerminator()))
- // Mark landing pad.
- FuncInfo->MBBMap[Invoke->getSuccessor(1)]->setIsLandingPad();
-
SelectAllBasicBlocks(Fn, *MF, TII);
// If the first basic block in the function has live ins that need to be