diff options
author | Timur Iskhodzhanov <timurrrr@google.com> | 2013-12-03 12:05:18 +0000 |
---|---|---|
committer | Timur Iskhodzhanov <timurrrr@google.com> | 2013-12-03 12:05:18 +0000 |
commit | c6a2cbbacb5c95efb1171636bba849d99937366e (patch) | |
tree | a5188ba353415129efe900f6f173de1d011d9f99 /include | |
parent | 616c94ba87b9f3ce4e4c2cd01474294438b676b7 (diff) | |
download | llvm-c6a2cbbacb5c95efb1171636bba849d99937366e.tar.gz llvm-c6a2cbbacb5c95efb1171636bba849d99937366e.tar.bz2 llvm-c6a2cbbacb5c95efb1171636bba849d99937366e.tar.xz |
Generalize debug info / EH emission in AsmPrinter
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196270 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/CodeGen/AsmPrinter.h | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/include/llvm/CodeGen/AsmPrinter.h b/include/llvm/CodeGen/AsmPrinter.h index d117cfddb6..24e2145e4a 100644 --- a/include/llvm/CodeGen/AsmPrinter.h +++ b/include/llvm/CodeGen/AsmPrinter.h @@ -22,6 +22,7 @@ #include "llvm/Support/ErrorHandling.h" namespace llvm { + class AsmPrinterHandler; class BlockAddress; class GCStrategy; class Constant; @@ -110,13 +111,21 @@ namespace llvm { /// function. MachineLoopInfo *LI; + struct HandlerInfo { + AsmPrinterHandler *Handler; + const char *TimerName, *TimerGroupName; + HandlerInfo(AsmPrinterHandler *Handler, const char *TimerName, + const char *TimerGroupName) + : Handler(Handler), TimerName(TimerName), + TimerGroupName(TimerGroupName) {} + }; + /// Handlers - a vector of all debug/EH info emitters we should use. + /// This vector maintains ownership of the emitters. + SmallVector<HandlerInfo, 1> Handlers; + /// DD - If the target supports dwarf debug info, this pointer is non-null. DwarfDebug *DD; - /// DE - If the target supports dwarf exception info, this pointer is - /// non-null. - DwarfException *DE; - protected: explicit AsmPrinter(TargetMachine &TM, MCStreamer &Streamer); |