This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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: [PATCH][C++] Fix PR29433, make C++ use a lot less time/memory


On Mon, 11 Dec 2006, Jason Merrill wrote:

> Richard Guenther wrote:
> > Parse error ;)  If we apply the patch I provided with the failing
> > testcase DECL_NAME would be different from now and we use DECL_NAME
> > to generate DW_AT_Name and friends.  At least for the dwarf entries
> > where we do not have a mangled name also (all the types), we need
> > something better than just the base name of the template (at the
> > moment we have the complete "diagnostic" name here).
> 
> Right.  Basically, we need the debugging backends to call the same function
> that we currently use to generate DECL_NAME.

I would say the situation is slightly better as (I believe) we can rely
on the fact that the types that reach dwarf2out are "complete" (that is,
have all template parameters substituted), so we can use the mangler to
output a mangled name even for DW_AT_structure_type (or how it is called).

Now even calling back to the C++ mangler is bad from inside the backend :/

With using mangled names (which would lead to so much smaller debug info)
we'd have to fix gdb of course.  But maybe stage1 of gcc 4.3 is a good
amount ahead of time to let gdb folks sort this out themselves...

Richard.

--
Richard Guenther <rguenther@suse.de>
Novell / SUSE Labs


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