summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/AsmPrinter/DwarfException.h
diff options
context:
space:
mode:
authorAnton Korobeynikov <asl@math.spbu.ru>2011-01-14 21:57:53 +0000
committerAnton Korobeynikov <asl@math.spbu.ru>2011-01-14 21:57:53 +0000
commitb46ef57de5a2a8492fedd710bb48afee6d1f0522 (patch)
tree34f602f86714f255070fb7cef4152e52acaf8187 /llvm/lib/CodeGen/AsmPrinter/DwarfException.h
parent61d167e92bca1e4a6114e7d2abc964562abe74b5 (diff)
downloadbcm5719-llvm-b46ef57de5a2a8492fedd710bb48afee6d1f0522.tar.gz
bcm5719-llvm-b46ef57de5a2a8492fedd710bb48afee6d1f0522.zip
Add CFI directives-based frame information emission. Not hooked yet.
llvm-svn: 123474
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/DwarfException.h')
-rw-r--r--llvm/lib/CodeGen/AsmPrinter/DwarfException.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfException.h b/llvm/lib/CodeGen/AsmPrinter/DwarfException.h
index adfbc8595bf..a172e53f8ac 100644
--- a/llvm/lib/CodeGen/AsmPrinter/DwarfException.h
+++ b/llvm/lib/CodeGen/AsmPrinter/DwarfException.h
@@ -139,6 +139,37 @@ public:
virtual void EndFunction();
};
+class DwarfCFIException : public DwarfException {
+ /// shouldEmitTable - Per-function flag to indicate if EH tables should
+ /// be emitted.
+ bool shouldEmitTable;
+
+ /// shouldEmitMoves - Per-function flag to indicate if frame moves info
+ /// should be emitted.
+ bool shouldEmitMoves;
+
+ /// shouldEmitTableModule - Per-module flag to indicate if EH tables
+ /// should be emitted.
+ bool shouldEmitTableModule;
+public:
+ //===--------------------------------------------------------------------===//
+ // Main entry points.
+ //
+ DwarfCFIException(AsmPrinter *A);
+ virtual ~DwarfCFIException();
+
+ /// EndModule - Emit all exception information that should come after the
+ /// content.
+ virtual void EndModule();
+
+ /// BeginFunction - Gather pre-function exception information. Assumes being
+ /// emitted immediately after the function entry point.
+ virtual void BeginFunction(const MachineFunction *MF);
+
+ /// EndFunction - Gather and emit post-function exception information.
+ virtual void EndFunction();
+};
+
class DwarfTableException : public DwarfException {
/// shouldEmitTable - Per-function flag to indicate if EH tables should
/// be emitted.
OpenPOWER on IntegriCloud