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

Eric Christopher echristo at gmail.com
Wed Dec 18 15:39:51 PST 2013


Also, any users would have to do the same change so...

On Wed Dec 18 2013 at 3:23:43 PM, Adrian Prantl <aprantl at apple.com> wrote:

> I’m aware of the risk, but I decided it was worth taking it :-)
> Eric and I discussed introducing temporary constants in the user namespace
> for the ref-qualifiers until the standard is official, but then we would
> definitely have to change it once the spec is finalized. By doing it this
> way, we only have to change it, if it really were to be changed in the spec.
>
> -- adrian
>
> On Dec 18, 2013, at 15:15, Robinson, Paul <Paul_Robinson at playstation.
> sony.com> wrote:
>
> > 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
> >
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20131218/79f01254/attachment.html>


More information about the llvm-commits mailing list