summaryrefslogtreecommitdiff
path: root/include/llvm/Target/TargetAsmInfo.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/llvm/Target/TargetAsmInfo.h')
-rw-r--r--include/llvm/Target/TargetAsmInfo.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/include/llvm/Target/TargetAsmInfo.h b/include/llvm/Target/TargetAsmInfo.h
index aa39c90c5a..2dd644c089 100644
--- a/include/llvm/Target/TargetAsmInfo.h
+++ b/include/llvm/Target/TargetAsmInfo.h
@@ -25,6 +25,8 @@ namespace llvm {
/// TargetAsmInfo - This class is intended to be used as a base class for asm
/// properties and features specific to the target.
+ namespace ExceptionHandling { enum ExceptionsType { None, Dwarf, SjLj }; }
+
class TargetAsmInfo {
protected:
//===------------------------------------------------------------------===//
@@ -269,7 +271,8 @@ namespace llvm {
/// SupportsExceptionHandling - True if target supports
/// exception handling.
///
- bool SupportsExceptionHandling; // Defaults to false.
+ // Defaults to None
+ ExceptionHandling::ExceptionsType ExceptionsType;
/// RequiresFrameSection - true if the Dwarf2 output needs a frame section
///
@@ -482,7 +485,10 @@ namespace llvm {
return SupportsDebugInformation;
}
bool doesSupportExceptionHandling() const {
- return SupportsExceptionHandling;
+ return ExceptionsType != ExceptionHandling::None;
+ }
+ ExceptionHandling::ExceptionsType getExceptionHandlingType() const {
+ return ExceptionsType;
}
bool doesDwarfRequireFrameSection() const {
return DwarfRequiresFrameSection;