Re: [RFA] Kill SOFUN_ADDRESS_MAYBE_MISSING (was Re: multi-arch TODO)

Kevin Buettner
2002-04-23T16:43:47Z

On Apr 23, 3:00am, David S. Miller wrote:

> > Why don't all Linux targets define this? Do some binutils ports
> > perform this optimization and others not? Or was there some bug
> > in N_FUN/N_SO stabs in binutils and/or gcc that this is papering
> > around? kevinb@cyghat.com is the one who added this to powerpc
> > and i386 Linux.
>
> I haven't given it a lot of thought recently, but my opinion is that
> the SOFUN_ADDRESS_MAYBE_MISSING code ought to be enabled everywhere.
> The only downside that I can think of is that we lose the ability
> to put a symbol at address 0.
>
> Sounds find to me, how about this patch?
>
> 2002-04-23 David S. Miller <davem@redhat.com>
>
> * config/i386/tm-i386sol2.h, config/i386/tm-linux.h,
> config/powerpc/tm-linux.h, config/powerpc/tm-ppc-eabi.h,
> config/sparc/tm-sun4sol2.h (SOFUN_ADDRESS_MAYBE_MISSING): Kill.
> * dbxread.c, elfread.c, minsyms.c, mdebugread.c, symmisc.c,
> symtab.h (whole file): Act as if SOFUN_ADDRESS_MAYBE_MISSING was
> always defined, kill ifdefs.

Yes, this is exactly what I had in mind. It looks okay to me, but it
needs to be carefully considered and approved (or not) by the symtab
maintainers.

As noted earlier, the downside is that we lose the ability to put a
symbol at address 0. This doesn't pose a problem for operating
systems which'll never map part of the program at address 0, but there
may be some embedded environments for which this is a concern.

Kevin