Re: Why -mxgot on MIPS and not -fpic/-fPIC?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 3 Oct 2016, Florian Weimer wrote:

> >> GHC produces objects which need -mxgot.
> >
> >  Ouch, what a waste of memory!
> 
> There might be ways to cut down the number of relocations.

 Well, avoiding the use of R_MIPS_GOT_HI16/R_MIPS_GOT_LO16 pairs unless 
absolutely necessary is *the* way.

> >  This raises a question however: why do you need it in the first place?  
> > The only case where multi-got does not work is where you have a single 
> > object (.o) file which requires more than 16378 GOT entries (8188 in the 
> > n64 ABI case).  A GOT entry is required per each individual global symbol 
> > and per each 64kB chunk of local (static) symbols -- do you really have 
> > such a huge object file?  Perhaps you could split the source so that 
> > multiple objects are created instead?
> 
> Or group multiple related variables in a struct.  There are likely
> quite a few ways GHC could generate code leading to improved
> relocations because the DSOs it builds do not have a stable ABI
> anyway.  But I bet it's not on the GHC developers' radar screen today
> because other platforms have less stringent limits (but would benefit
> from the RSS reduction as well).

 I take it they don't support multi-GOT then, right?

> You'll see that in Fedora eventually.  My question was prompted by a
> Debian build failure without -mxgot.

 So what did fail to build then?  That's ultimately what the question I 
asked boils down to.

  Maciej



[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux