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

Re: Status of armel in the archive?

> > I now have a functional patch for EABI on v4 processors. I can push it
> > out if you're interested.
> I'm exceedingly interested, largely on behalf of people who are using
> balloon2 (and thus strongarm) in current production hardware, and
> would like to be able to use eabi.
> I can also test stuff on my netwinder.

Patch is in upstream binutils CVS[1].

You'll need additional gcc changes to pass as --fix-v4bx and  
ld --fix-v4bx-interworking.  SUBTARGET_EXTRA_ASM_SPEC and LINK_SPEC in 
gcc/config/arm/bpabi.h should do the trick.

I recommend configuring the toolchain for ARMv4t, and relying on the 
assembler/linker to fix things up.  Configuring for ARMv4 may cause some hand 
written assembly in glibc/libgcc to incorrectly disable interworking.

I have not measured performance overhead.  My guess is that branch prediction 
on modern cores probably folds the additional branch. There is some scope for 
having gcc inline the veneers. This will probably improve performance at the 
expense of code size.


[1] http://sourceware.org/ml/binutils/2008-02/msg00196.html

Reply to: