[llvm] r197611 - Pull in a couple of new constants from the upcoming DWARF 5 standard.
Adrian Prantl
aprantl at apple.com
Wed Dec 18 13:48:14 PST 2013
Author: adrian
Date: Wed Dec 18 15:48:14 2013
New Revision: 197611
URL: http://llvm.org/viewvc/llvm-project?rev=197611&view=rev
Log:
Pull in a couple of new constants from the upcoming DWARF 5 standard.
Modified:
llvm/trunk/include/llvm/Support/Dwarf.h
llvm/trunk/lib/Support/Dwarf.cpp
Modified: llvm/trunk/include/llvm/Support/Dwarf.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Support/Dwarf.h?rev=197611&r1=197610&r2=197611&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Support/Dwarf.h (original)
+++ llvm/trunk/include/llvm/Support/Dwarf.h Wed Dec 18 15:48:14 2013
@@ -41,7 +41,7 @@ namespace dwarf {
//===----------------------------------------------------------------------===//
// Dwarf constants as gleaned from the DWARF Debugging Information Format V.4
-// reference manual http://dwarf.freestandards.org.
+// reference manual http://www.dwarfstd.org/.
//
// Do not mix the following two enumerations sets. DW_TAG_invalid changes the
@@ -129,6 +129,12 @@ enum Tag LLVM_ENUM_INT_TYPE(uint16_t) {
DW_TAG_type_unit = 0x41,
DW_TAG_rvalue_reference_type = 0x42,
DW_TAG_template_alias = 0x43,
+
+ // New in DWARF 5:
+ DW_TAG_coarray_type = 0x44,
+ DW_TAG_generic_subrange = 0x45,
+ DW_TAG_dynamic_type = 0x46,
+
DW_TAG_MIPS_loop = 0x4081,
DW_TAG_format_label = 0x4101,
DW_TAG_function_template = 0x4102,
@@ -264,6 +270,18 @@ enum Attribute LLVM_ENUM_INT_TYPE(uint16
DW_AT_enum_class = 0x6d,
DW_AT_linkage_name = 0x6e,
+ // New in DWARF 5:
+ DW_AT_string_length_bit_size = 0x6f,
+ DW_AT_string_length_byte_size = 0x70,
+ DW_AT_rank = 0x71,
+ DW_AT_str_offsets_base = 0x72,
+ DW_AT_addr_base = 0x73,
+ DW_AT_ranges_base = 0x74,
+ DW_AT_dwo_id = 0x75,
+ DW_AT_dwo_name = 0x76,
+ DW_AT_reference = 0x77,
+ DW_AT_rvalue_reference = 0x78,
+
DW_AT_lo_user = 0x2000,
DW_AT_hi_user = 0x3fff,
@@ -605,7 +623,16 @@ enum SourceLanguage {
DW_LANG_ObjC_plus_plus = 0x0011,
DW_LANG_UPC = 0x0012,
DW_LANG_D = 0x0013,
+ // New in DWARF 5:
DW_LANG_Python = 0x0014,
+ DW_LANG_OpenCL = 0x0015,
+ DW_LANG_Go = 0x0016,
+ DW_LANG_Modula3 = 0x0017,
+ DW_LANG_Haskell = 0x0018,
+ DW_LANG_C_plus_plus_03 = 0x0019,
+ DW_LANG_C_plus_plus_11 = 0x001a,
+ DW_LANG_OCaml = 0x001b,
+
DW_LANG_lo_user = 0x8000,
DW_LANG_Mips_Assembler = 0x8001,
DW_LANG_hi_user = 0xffff
Modified: llvm/trunk/lib/Support/Dwarf.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Support/Dwarf.cpp?rev=197611&r1=197610&r2=197611&view=diff
==============================================================================
--- llvm/trunk/lib/Support/Dwarf.cpp (original)
+++ llvm/trunk/lib/Support/Dwarf.cpp Wed Dec 18 15:48:14 2013
@@ -84,6 +84,9 @@ const char *llvm::dwarf::TagString(unsig
case DW_TAG_arg_variable: return "DW_TAG_arg_variable";
case DW_TAG_rvalue_reference_type: return "DW_TAG_rvalue_reference_type";
case DW_TAG_template_alias: return "DW_TAG_template_alias";
+ case DW_TAG_coarray_type: return "DW_TAG_coarray_type";
+ case DW_TAG_generic_subrange: return "DW_TAG_generic_subrange";
+ case DW_TAG_dynamic_type: return "DW_TAG_generic_subrange";
case DW_TAG_MIPS_loop: return "DW_TAG_MIPS_loop";
case DW_TAG_type_unit: return "DW_TAG_type_unit";
case DW_TAG_format_label: return "DW_TAG_format_label";
@@ -206,6 +209,16 @@ const char *llvm::dwarf::AttributeString
case DW_AT_const_expr: return "DW_AT_const_expr";
case DW_AT_enum_class: return "DW_AT_enum_class";
case DW_AT_linkage_name: return "DW_AT_linkage_name";
+ case DW_AT_string_length_bit_size: return "DW_AT_string_length_bit_size";
+ case DW_AT_string_length_byte_size: return "DW_AT_string_length_byte_size";
+ case DW_AT_rank: return "DW_AT_rank";
+ case DW_AT_str_offsets_base: return "DW_AT_str_offsets_base";
+ case DW_AT_addr_base: return "DW_AT_addr_base";
+ case DW_AT_ranges_base: return "DW_AT_ranges_base";
+ case DW_AT_dwo_id: return "DW_AT_dwo_id";
+ case DW_AT_dwo_name: return "DW_AT_dwo_name";
+ case DW_AT_reference: return "DW_AT_reference";
+ case DW_AT_rvalue_reference: return "DW_AT_rvalue_reference";
case DW_AT_MIPS_loop_begin: return "DW_AT_MIPS_loop_begin";
case DW_AT_MIPS_tail_loop_begin: return "DW_AT_MIPS_tail_loop_begin";
case DW_AT_MIPS_epilog_begin: return "DW_AT_MIPS_epilog_begin";
@@ -576,6 +589,14 @@ const char *llvm::dwarf::LanguageString(
case DW_LANG_ObjC_plus_plus: return "DW_LANG_ObjC_plus_plus";
case DW_LANG_UPC: return "DW_LANG_UPC";
case DW_LANG_D: return "DW_LANG_D";
+ case DW_LANG_Python: return "DW_LANG_Python";
+ case DW_LANG_OpenCL: return "DW_LANG_OpenCL";
+ case DW_LANG_Go: return "DW_LANG_Go";
+ case DW_LANG_Modula3: return "DW_LANG_Modula3";
+ case DW_LANG_Haskell: return "DW_LANG_Haskell";
+ case DW_LANG_C_plus_plus_03: return "DW_LANG_C_plus_plus_03";
+ case DW_LANG_C_plus_plus_11: return "DW_LANG_C_plus_plus_11";
+ case DW_LANG_OCaml: return "DW_LANG_OCaml";
case DW_LANG_lo_user: return "DW_LANG_lo_user";
case DW_LANG_hi_user: return "DW_LANG_hi_user";
}
More information about the llvm-commits
mailing list