This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[RFA] dwarf2_physname
- From: Keith Seitz <keiths at redhat dot com>
- To: gdb-patches at sourceware dot org
- Date: Mon, 31 Aug 2009 13:41:50 -0700
- Subject: [RFA] dwarf2_physname
Hi,
I have been working on archer's expression parsing (and therefore symbol
table madness) for the past year or so. I've managed to fix a lot of C++
problems on my archer-keiths-expr-cumulative branch. I would like to
start attempting to push many of these patches into mainline FSF GDB,
but of course, as with any large task of this type, the patches are HUGE
(5500+ lines).
In an effort to help maintainers assess the code in smaller chunks
without introducing new, temporary test suite failures, I'm going to try
something "different" -- this patch, and the follow-ons, will not
actually do anything until a final patch turns it all on. My hope is
that this will be minimally intrusive to GDB's code base, especially
given all the talk of a new release.
To start, I would like to submit a patch which is the beginnings of
removing GDB's use of the DWARF2 quasi-attribute
DW_AT_MIPS_linkage_name. Instead of using this attribute, GDB will start
generating physical names itself.
Again, this patch will not actually change the current code path; the
main entry, dwarf2_physname is not called (but you can imagine, it will
replace all dwarf2_linkage_name calls). Therefore, there are no test
suite regressions of any kind.
Keith
ChangeLog
2009-08-31 Keith Seitz <keiths@redhat.com>
* dwarf2read.c (die_list): New file global.
(physname_prefix): New function.
(physname_prefix_1): New function.
(dwarf2_physname): New function.
(die_needs_namespace): New function.
Based on work from Daniel Jacobowitz <dan@codesourcery.com>:
* typeprint.h (c_type_print_args): Declare.
* ui-file.h (ui_file_obsavestring): Declare.
* c-typeprint.c (c_type_print_args): Add to global namespace.
Add "show_articifical" parameter and only print them when
requested.
* ui-file.c (do_ui_file_obsavestring): New function.
(ui_file_obsavestring): New function.
Attachment:
dwarf2_physname.patch
Description: Text document