diff options
| author | Reid Kleckner <reid@kleckner.net> | 2015-04-24 20:25:05 +0000 |
|---|---|---|
| committer | Reid Kleckner <reid@kleckner.net> | 2015-04-24 20:25:05 +0000 |
| commit | cfbfe6f29cb9f66766fe0851062ca239a8299acb (patch) | |
| tree | 922f845d30fba8d4a7d427478bbe7e37d37ecc5b /llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp | |
| parent | 75ef0c09d0b5c3f9b6ee9e1dc1874b9d0001e8a4 (diff) | |
| download | bcm5719-llvm-cfbfe6f29cb9f66766fe0851062ca239a8299acb.tar.gz bcm5719-llvm-cfbfe6f29cb9f66766fe0851062ca239a8299acb.zip | |
[SEH] Implement GetExceptionCode in __except blocks
This introduces an intrinsic called llvm.eh.exceptioncode. It is lowered
by copying the EAX value live into whatever basic block it is called
from. Obviously, this only works if you insert it late during codegen,
because otherwise mid-level passes might reschedule it.
llvm-svn: 235768
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp')
| -rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp index f3735cb5315..056ba4a4198 100644 --- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp @@ -961,12 +961,6 @@ bool SelectionDAGISel::PrepareEHLandingPad() { for (MachineBasicBlock *InvokeBB : InvokeBBs) InvokeBB->removeSuccessor(MBB); - // Transfer EH state number assigned to the IR block to the MBB. - if (Personality == EHPersonality::MSVC_CXX) { - WinEHFuncInfo &FI = MF->getMMI().getWinEHFuncInfo(MF->getFunction()); - MF->getMMI().addWinEHState(MBB, FI.LandingPadStateMap[LPadInst]); - } - // Don't select instructions for the landingpad. return false; } |

