This is the mail archive of the binutils@sourceware.org mailing list for the binutils 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: x32 psABI draft version 0.2


> On Fri, Feb 18, 2011 at 12:11 AM, Jan Beulich <JBeulich@novell.com> wrote:
> >>>> On 17.02.11 at 18:59, "H.J. Lu" <hjl.tools@gmail.com> wrote:
> >> On Thu, Feb 17, 2011 at 8:11 AM, Jan Beulich <JBeulich@novell.com> wrote:
> >>>>>> On 17.02.11 at 16:49, "H.J. Lu" <hjl.tools@gmail.com> wrote:
> >>>> On Thu, Feb 17, 2011 at 7:44 AM, Jan Hubicka <hubicka@ucw.cz> wrote:
> >>>>>> > According to Mozilla folks however REL+RELA scheme used by EABI leads
> >>>>>> > to significandly smaller libxul.so size
> >>>>>> >
> >>>>>> > According to http://glandium.org/blog/?p=1177 the difference is about 4-5MB
> >>>>>> > (out of approximately 20-30MB shared lib)
> >>>>>>
> >>>>>> This is orthogonal to x32 psABI.
> >>>>>
> >>>>> Understood. ?I am just pointing out that x86-64 Mozilla suffers from startup
> >>>>> problems (extra 5MB of disk read needed) compared to both x86 and ARM EABI
> >>>>> because x86-64 ABI is RELA only. If x86-64 ABI was REL+RELA like EABI is, we
> >>>>> would not have this problem here.
> >>>>>
> >>>>
> >>>> If people want to see REL+RELA in x32, they have to contribute codes.
> >>>
> >>> That's exactly the wrong way round: First the specification has to allow
> >>> for (but not require) it, and only then does it make sense to write code.
> >>>
> >>
> >> No, it has to be supported at least by static linker and dynamic
> >> linker. Otherwise, no one can use it.
> >
> > I'm afraid I have to disagree: ELF (and the psABI) is not specific to
> > a particular OS, and hence it allowing something doesn't mean the
> > OS ABI may not restrict it. Hence the psABI first has to at least not
> > forbid something (as it currently does for REL on x86-64), in order
> > for an implementation of that something to make sense.
> >
> > Jan
> >
> >
> 
> How about only allowing REL relocations in executables and DSOes?

I don't know, I am not really expert in this area. So I am not quit sure if allowing
REL is good idea given the mess they imply in binutils sources. I guess it makes sense
supposing that it is easy for linker to turn RELAs at input with addend fitting
range into RELs.

I wondered, based on the Mozilla experience, if we don't want to make REL
optional in x86-64 ABI, too?

Honza


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