[llvm] r197611 - Pull in a couple of new constants from the upcoming DWARF 5 standard.

Robinson, Paul Paul_Robinson at playstation.sony.com
Wed Dec 18 15:15:48 PST 2013


You know these are tentative, not definitive, until DWARF5
is actually published... there is a small but non-zero risk 
that they'll change in the meantime (it has happened before).
--paulr

> -----Original Message-----
> From: llvm-commits-bounces at cs.uiuc.edu [mailto:llvm-commits-
> bounces at cs.uiuc.edu] On Behalf Of Adrian Prantl
> Sent: Wednesday, December 18, 2013 1:48 PM
> To: llvm-commits at cs.uiuc.edu
> Subject: [llvm] r197611 - Pull in a couple of new constants from the
> upcoming DWARF 5 standard.
> 
> 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";
>    }
> 
> 
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits






More information about the llvm-commits mailing list