This is the mail archive of the libc-ports@sources.redhat.com mailing list for the libc-ports 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: [PATCH] arm: fix cfi errors with newer binutils


On Fri, 6 Jan 2012, Mike Frysinger wrote:

> On Tuesday 03 January 2012 12:44:19 Joseph S. Myers wrote:
> > On Tue, 3 Jan 2012, Mike Frysinger wrote:
> > > so ARM cores older than armv4t are no longer supported (e.g. StrongARMs)
> > > ? :(
> > 
> > I believe you can use ARMv4 cores with EABI via the
> > --fix-v4bx-interworking linker option (building code that works on v4 and
> > is interworking-safe on v4T).  (You may be able to link with plain
> > --fix-v4bx, but the resulting binaries and shared libraries then wouldn't
> > be interworking safe if run on a newer system, unless that newer system
> > is v7.)
> 
> nice.  i wonder if gcc should automatically utilize this when given -march 
> armv4 or lower ?

It looks like the relevant assembler spec (so that the instruction is 
accepted and has the R_ARM_V4BX relocation generated that the linker needs 
to fix them up) is already there for all EABI targets (in bpabi.h and not 
overridden by individual targets), but the linker spec is enabled for 
bare-metal but not GNU/Linux (I suppose because there isn't a 
one-size-fits-all answer for which of the two linker options you might 
want to use on GNU/Linux).

-- 
Joseph S. Myers
joseph@codesourcery.com


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