diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2015-03-17 13:57:48 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2015-03-17 13:57:48 +0000 |
commit | dc4263c7604979f59fb3f637a3caf1e30f22f38b (patch) | |
tree | dc8d3cdbdbb4d72de08d77f8400a929699b3b737 /llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp | |
parent | 5a106191fa404fab1551b708923f10cd037508dc (diff) | |
download | bcm5719-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.cpp | 20 |
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"); |