This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: FYI: implement new DWARF macro proposal


On Jul 26, 2011, at 7:03 PM, Tom Tromey wrote:

> I'm checking this in.
> 
> Jakub recently wrote a spec and implementation for a new representation
> of the data currently in .debug_macinfo.  This new representation takes
> much less space the old one.  Jakub's code is now in GCC trunk.
> 
> This patch implements the new format for gdb.
> 
> Built and regtested by the buildbot.  I also tested macscp.exp and
> lineinc.exp using the new compiler.
> 
> Tom
> 
> 2011-07-26  Tom Tromey  <tromey@redhat.com>
> 
> 	* symfile.h (struct dwarf2_debug_sections) <macro>: New field.
> 	* dwarf2read.c (read_indirect_string_at_offset): New function.
> 	(read_indirect_string): Use it.
> 	(dwarf_decode_macro_bytes): New function, taken from
> 	dwarf_decode_macros.  Handle DW_MACRO_GNU_*.
> 	(dwarf_decode_macros): Use it.  handle DW_MACRO_GNU_*.
> 	(dwarf_parse_macro_header, skip_form_bytes, skip_unknown_opcode):
> 	New functions.
> 	(struct dwarf2_per_objfile) <macro>: New field.
> 	(dwarf2_elf_names): Add .debug_macro.
> 	(dwarf2_macros_too_long_complaint): Add 'section' argument.
> 	(dwarf2_locate_sections): Handle new section.
> 	(read_file_scope): Handle DW_AT_GNU_macros.
> 	(dwarf2_per_objfile_free): Unmap the .debug_macro section.

[...]

> diff --git a/gdb/symfile.h b/gdb/symfile.h
> index cc65a14..eb5beaa 100644
> --- a/gdb/symfile.h
> +++ b/gdb/symfile.h
> @@ -582,6 +582,7 @@ struct dwarf2_debug_sections {
>   struct dwarf2_section_names line;
>   struct dwarf2_section_names loc;
>   struct dwarf2_section_names macinfo;
> +  struct dwarf2_section_names macro;
>   struct dwarf2_section_names str;
>   struct dwarf2_section_names ranges;
>   struct dwarf2_section_names types;

Looks like you forgot to update the table for AIX.

Tristan.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]