summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2015-03-17 13:57:48 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2015-03-17 13:57:48 +0000
commitdc4263c7604979f59fb3f637a3caf1e30f22f38b (patch)
treedc8d3cdbdbb4d72de08d77f8400a929699b3b737 /llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp
parent5a106191fa404fab1551b708923f10cd037508dc (diff)
downloadbcm5719-llvm-dc4263c7604979f59fb3f637a3caf1e30f22f38b.tar.gz
bcm5719-llvm-dc4263c7604979f59fb3f637a3caf1e30f22f38b.zip
Move the EH symbol to the asm printer and use it for the SJLJ case too.
llvm-svn: 232475
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp')
-rw-r--r--llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp20
1 files changed, 2 insertions, 18 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp b/llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp
index 8a040d92aee..14df4c91625 100644
--- a/llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp
+++ b/llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp
@@ -25,22 +25,10 @@
using namespace llvm;
-EHStreamer::EHStreamer(AsmPrinter *A)
- : CurExceptionSym(nullptr), Asm(A), MMI(Asm->MMI) {}
+EHStreamer::EHStreamer(AsmPrinter *A) : Asm(A), MMI(Asm->MMI) {}
EHStreamer::~EHStreamer() {}
-MCSymbol *EHStreamer::getCurExceptionSym() {
- if (!CurExceptionSym)
- CurExceptionSym = Asm->OutContext.createTempSymbol(
- "exception" + Twine(Asm->getFunctionNumber()));
- return CurExceptionSym;
-}
-
-void EHStreamer::beginFunction(const MachineFunction *MF) {
- CurExceptionSym = nullptr;
-}
-
/// How many leading type ids two landing pads have in common.
unsigned EHStreamer::sharedTypeIDs(const LandingPadInfo *L,
const LandingPadInfo *R) {
@@ -448,11 +436,7 @@ void EHStreamer::emitExceptionTable() {
Asm->OutContext.GetOrCreateSymbol(Twine("GCC_except_table")+
Twine(Asm->getFunctionNumber()));
Asm->OutStreamer.EmitLabel(GCCETSym);
- Asm->OutStreamer.EmitLabel(getCurExceptionSym());
-
- if (IsSJLJ)
- Asm->OutStreamer.EmitLabel(Asm->GetTempSymbol("_LSDA_",
- Asm->getFunctionNumber()));
+ Asm->OutStreamer.EmitLabel(Asm->getCurExceptionSym());
// Emit the LSDA header.
Asm->EmitEncodingByte(dwarf::DW_EH_PE_omit, "@LPStart");
OpenPOWER on IntegriCloud