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: [uClinux-dev] why no-mmu cannot support binfmt_aout.c


Closed list CC removed.

On Thu, Jan 29, 2009 at 06:50:46PM +0000, Jamie Lokier wrote:
> Do you really have a policy of including pre-built multilib-ed libc
> and libstdc++ as well as libgcc for all the combinations that make
> sense?

Yes, but that's fewer than you think.

I don't know off the top of my head which libraries we ship.  But all
our tools are EABI; and one of the explicit goals of the EABI is to
reduce the number of link-incompatible variants.  Others are often
*desirable*, and we obviously ship more than the bare minimum.

We've also made the linker Very Smart(TM) at detecting incompatible
objects, based on ABI-specified object attributes.

>     { OABI, EABI soft-float, EABI hard-float }
>                      times

EABI soft and hard float are link compatible.  There's an
incompatible variant of the EABI that uses hardware registers for
arguments in addition to for calculation; GCC will not support it
until 4.5 though.

>              { Thumb interwork or not }
>                      times

The EABI mandates interworking.  Linker fixups are used to accomodate
v4; there is an important performance distinction between v4-T and v5
though.

>     { ARMv4, ARMv4T, ARMv5, ARMv6, ARMv7 (?) }
>                      times

All common-denominator compatible.

>             { not Thumb, Thumb, Thumb2 }
>                      times

All compatible.

>          { non-PIC, PIC, PIC+single-pic-base }

PIC and non-PIC are compatible.  I'm not familiar with
single-pic-base, since there's no existing ARM FDPIC and we do not do
a lot of work with other systems that use a single-pic-base.

-- 
Daniel Jacobowitz
CodeSourcery


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