diff options
author | Jim Laskey <jlaskey@mac.com> | 2007-02-01 16:31:34 +0000 |
---|---|---|
committer | Jim Laskey <jlaskey@mac.com> | 2007-02-01 16:31:34 +0000 |
commit | b82313fdc21e8190768addf0f16710b94f0e1441 (patch) | |
tree | 026fec6526020c20ddecd9c5f43a216c2c2860ba /include | |
parent | 283663a4ed18124980c1a5e3114550638115edd8 (diff) | |
download | llvm-b82313fdc21e8190768addf0f16710b94f0e1441.tar.gz llvm-b82313fdc21e8190768addf0f16710b94f0e1441.tar.bz2 llvm-b82313fdc21e8190768addf0f16710b94f0e1441.tar.xz |
Support for non-landing pad exception handling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33755 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/CodeGen/MachineModuleInfo.h | 5 | ||||
-rw-r--r-- | include/llvm/Support/Dwarf.h | 20 | ||||
-rw-r--r-- | include/llvm/Target/TargetAsmInfo.h | 19 |
3 files changed, 37 insertions, 7 deletions
diff --git a/include/llvm/CodeGen/MachineModuleInfo.h b/include/llvm/CodeGen/MachineModuleInfo.h index 8617b38808..17e3ad8000 100644 --- a/include/llvm/CodeGen/MachineModuleInfo.h +++ b/include/llvm/CodeGen/MachineModuleInfo.h @@ -1090,11 +1090,6 @@ public: return Lines; } - // FIXME: nuke this. - void ClearLineInfo() { - Lines.clear(); - } - /// SetupCompileUnits - Set up the unique vector of compile units. /// void SetupCompileUnits(Module &M); diff --git a/include/llvm/Support/Dwarf.h b/include/llvm/Support/Dwarf.h index e8aa384634..47d0d16286 100644 --- a/include/llvm/Support/Dwarf.h +++ b/include/llvm/Support/Dwarf.h @@ -458,7 +458,25 @@ enum dwarf_constants { DW_CFA_val_offset_sf = 0x15, DW_CFA_val_expression = 0x16, DW_CFA_lo_user = 0x1c, - DW_CFA_hi_user = 0x3f + DW_CFA_hi_user = 0x3f, + + DW_EH_PE_absptr = 0x00, + DW_EH_PE_omit = 0xff, + DW_EH_PE_uleb128 = 0x01, + DW_EH_PE_udata2 = 0x02, + DW_EH_PE_udata4 = 0x03, + DW_EH_PE_udata8 = 0x04, + DW_EH_PE_sleb128 = 0x09, + DW_EH_PE_sdata2 = 0x0A, + DW_EH_PE_sdata4 = 0x0B, + DW_EH_PE_sdata8 = 0x0C, + DW_EH_PE_signed = 0x08, + DW_EH_PE_pcrel = 0x10, + DW_EH_PE_textrel = 0x20, + DW_EH_PE_datarel = 0x30, + DW_EH_PE_funcrel = 0x40, + DW_EH_PE_aligned = 0x50, + DW_EH_PE_indirect = 0x80 }; /// TagString - Return the string for the specified tag. diff --git a/include/llvm/Target/TargetAsmInfo.h b/include/llvm/Target/TargetAsmInfo.h index c22b9c455c..75e797cd88 100644 --- a/include/llvm/Target/TargetAsmInfo.h +++ b/include/llvm/Target/TargetAsmInfo.h @@ -51,7 +51,7 @@ namespace llvm { /// AddressSize - Size of addresses used in file. /// unsigned AddressSize; // Defaults to 4. - + /// NeedsSet - True if target asm can't compute addresses on data /// directives. bool NeedsSet; // Defaults to false. @@ -60,6 +60,10 @@ namespace llvm { /// which is needed to compute the size of an inline asm. unsigned MaxInstLength; // Defaults to 4. + /// PCSymbol - The symbol used to represent the current PC. Used in PC + /// relative expressions. + const char *PCSymbol; // Defaults to "$". + /// SeparatorChar - This character, if specified, is used to separate /// instructions from each other when on the same line. This is used to /// measure inline asm instructions. @@ -305,6 +309,10 @@ namespace llvm { /// DwarfMacInfoSection - Section directive for Dwarf info. /// const char *DwarfMacInfoSection; // Defaults to ".debug_macinfo". + + /// DwarfEHFrameSection - Section directive for Exception frames. + /// + const char *DwarfEHFrameSection; // Defaults to ".eh_frame". //===--- CBE Asm Translation Table -----------------------------------===// @@ -346,6 +354,12 @@ namespace llvm { bool needsSet() const { return NeedsSet; } + const char *getPCSymbol() const { + return PCSymbol; + } + char getSeparatorChar() const { + return SeparatorChar; + } const char *getCommentString() const { return CommentString; } @@ -523,6 +537,9 @@ namespace llvm { const char *getDwarfMacInfoSection() const { return DwarfMacInfoSection; } + const char *getDwarfEHFrameSection() const { + return DwarfEHFrameSection; + } const char** getAsmCBE() const { return AsmTransCBE; } |