Fold the useful features of alist and alist_node into ilist, and
[oota-llvm.git] / include / llvm / Support / Dwarf.h
index 05260be2d7cbde9b790439d88462c4c671bd9106..01bfc3f35371de44e1eed249d37cba3b47e0868e 100644 (file)
@@ -2,8 +2,8 @@
 //
 //                     The LLVM Compiler Infrastructure
 //
-// This file was developed by James M. Laskey and is distributed under the
-// University of Illinois Open Source License. See LICENSE.TXT for details.
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
 //
 //===----------------------------------------------------------------------===//
 //
@@ -16,8 +16,6 @@
 #ifndef LLVM_SUPPORT_DWARF_H
 #define LLVM_SUPPORT_DWARF_H
 
-#include "llvm/System/IncludeFile.h"
-
 namespace llvm {
 
 namespace dwarf {
@@ -44,7 +42,7 @@ enum llvm_dwarf_constants {
   DW_TAG_user_base = 0x1000,            // Recommended base for user tags.
   
   DW_CIE_VERSION = 1,                   // Common frame information version.
-  DW_CIE_ID     = 0xffffffff               // Common frame information mark.
+  DW_CIE_ID       = 0xffffffff          // Common frame information mark.
 };
 
 enum dwarf_constants {
@@ -202,7 +200,8 @@ enum dwarf_constants {
   DW_AT_elemental = 0x66,
   DW_AT_pure = 0x67,
   DW_AT_recursive = 0x68,
-  DW_AT_sf_names = 0x2101,
+  DW_AT_MIPS_linkage_name = 0x2007,
+  DW_AT_sf_names   = 0x2101,
   DW_AT_src_info = 0x2102,
   DW_AT_mac_info = 0x2103,
   DW_AT_src_coords = 0x2104,
@@ -211,7 +210,7 @@ enum dwarf_constants {
   DW_AT_GNU_vector = 0x2107,
   DW_AT_lo_user = 0x2000,
   DW_AT_hi_user = 0x3fff,
-
   // Attribute form encodings
   DW_FORM_addr = 0x01,
   DW_FORM_block2 = 0x03,
@@ -457,7 +456,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.
@@ -548,6 +565,4 @@ const char *CallFrameString(unsigned Encoding);
 
 } // End of namespace llvm
 
-FORCE_DEFINING_FILE_TO_BE_LINKED(SupportDwarf)
-
 #endif