summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/AsmPrinter/WinException.h
diff options
context:
space:
mode:
authorDavid Majnemer <david.majnemer@gmail.com>2015-09-29 20:12:33 +0000
committerDavid Majnemer <david.majnemer@gmail.com>2015-09-29 20:12:33 +0000
commita80c1512861aa78f75a89b92275aaf2e92ff7fb9 (patch)
treeb5d4c3efc67ff022eb8a71ad379dc01a1447a46f /llvm/lib/CodeGen/AsmPrinter/WinException.h
parent81f005617e42e64b553a5ded37f1afac9b3fb4cc (diff)
downloadbcm5719-llvm-a80c1512861aa78f75a89b92275aaf2e92ff7fb9.tar.gz
bcm5719-llvm-a80c1512861aa78f75a89b92275aaf2e92ff7fb9.zip
[WinEH] Teach AsmPrinter about funclets
Summary: Funclets have been turned into functions by the time they hit the object file. Make sure that they have decent names for the symbol table and CFI directives explaining how to reason about their prologues. Differential Revision: http://reviews.llvm.org/D13261 llvm-svn: 248824
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/WinException.h')
-rw-r--r--llvm/lib/CodeGen/AsmPrinter/WinException.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/WinException.h b/llvm/lib/CodeGen/AsmPrinter/WinException.h
index 37d2ab6ae4e..bf1724f60f7 100644
--- a/llvm/lib/CodeGen/AsmPrinter/WinException.h
+++ b/llvm/lib/CodeGen/AsmPrinter/WinException.h
@@ -36,6 +36,9 @@ class LLVM_LIBRARY_VISIBILITY WinException : public EHStreamer {
/// True if this is a 64-bit target and we should use image relative offsets.
bool useImageRel32 = false;
+ /// Pointer to the current funclet entry BB.
+ const MachineBasicBlock *CurrentFuncletEntry = nullptr;
+
void emitCSpecificHandlerTable(const MachineFunction *MF);
/// Emit the EH table data for 32-bit and 64-bit functions using
@@ -76,6 +79,10 @@ public:
/// Gather and emit post-function exception information.
void endFunction(const MachineFunction *) override;
+
+ /// \brief Emit target-specific EH funclet machinery.
+ void beginFunclet(const MachineBasicBlock &MBB, MCSymbol *Sym) override;
+ void endFunclet() override;
};
}
OpenPOWER on IntegriCloud