This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH] Fix PR 51910, -frepo/linker demangling interaction
- From: Sandra Loosemore <sandra at codesourcery dot com>
- To: Jakub Jelinek <jakub at redhat dot com>
- Cc: Jason Merrill <jason at redhat dot com>, <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 1 Feb 2012 11:51:59 -0700
- Subject: Re: [PATCH] Fix PR 51910, -frepo/linker demangling interaction
- References: <4F25DF6A.email@example.com> <20120130142341.GF18768@tyan-ft48-01.lab.bos.redhat.com> <4F26BA55.firstname.lastname@example.org> <20120130161124.GH18768@tyan-ft48-01.lab.bos.redhat.com> <4F26FCF8.email@example.com> <20120201135629.GR18768@tyan-ft48-01.lab.bos.redhat.com>
On 02/01/2012 06:56 AM, Jakub Jelinek wrote:
Do users really want to demangle linker maps? I would never want that,
e.g. because it is ambiguous and less compact.
IMHO the best is just to back out the changes that introduced this
I don't think this is even really a regression. I haven't actually sat
down to try to reproduce this, but backing out the previous patch would
leave the -frepo behavior even more broken on Windows hosts than it is
now; one of the bugs fixed by the previous patch was that on Windows
collect2 *always* told ld to demangle names and there was no way for
users to override this via a command-line option or setting
COLLECT_NO_DEMANGLE. And, I think the -frepo bug was present on Linux
hosts too if you explicitly configured your GCC build with
--with-demangler-in-ld, which is what you need to do if you want ld to
be able to produce demangled link maps at all.
The patch I posted the other day does reconcile the problem when the
user wants both a demangled link map and -frepo processing, although it
does add the two extra link steps. Maybe we can figure out a way to
bypass the extra steps so that they only happen when the user has
specified -Wl,-Map and not --no-demangle? And/or make explicit -frepo
on the link command line shortcut some of it?
(BTW, the CodeSourcery IDE adds -Wl,-Map to the link line by default
because it's easier to always generate a link map than to have to
explain to users how to get one. Especially in the embedded space, it's
something many of our users actually do look at.)