summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTimur Iskhodzhanov <timurrrr@google.com>2013-12-03 15:10:23 +0000
committerTimur Iskhodzhanov <timurrrr@google.com>2013-12-03 15:10:23 +0000
commitac07cd54ed48cdc160eba7625eefe09c5f484eb2 (patch)
tree9edcf495ebd3893429e5fe32d4ae47fc9f47acb6 /include
parent94f5a677f66e748bcbf7f3e6974881754acf87b2 (diff)
downloadllvm-ac07cd54ed48cdc160eba7625eefe09c5f484eb2.tar.gz
llvm-ac07cd54ed48cdc160eba7625eefe09c5f484eb2.tar.bz2
llvm-ac07cd54ed48cdc160eba7625eefe09c5f484eb2.tar.xz
Reland 196270 "Generalize debug info / EH emission in AsmPrinter"
Addressing the existense AMDGPUAsmPrinter and other subclasses of AsmPrinter git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196288 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/CodeGen/AsmPrinter.h17
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);