RFC: consolidate ARM config for BFD

Richard Earnshaw rearnsha@gcc.gnu.org
Mon Apr 4 14:10:00 GMT 2005


On Mon, 2005-04-04 at 15:08, Richard Earnshaw wrote:
> On Sun, 2005-03-20 at 19:42, Simon Richter wrote:
> > Hi,
> > 
> > this patch attempts to make the ARM configuration more orthogonal. With
> > this patch, all targets except for arm-netbsd* arm-openbsd* and
> > arm-*-riscix* are available in big and little endian configurations,
> > with little endian being the default. Also, "arm", "thumb", "strongarm"
> > and "xscale" are equivalent, with the exception of arm-*-riscix*. Also,
> > it asks people using nto*arm* to use arm*-*-nto*.
> > 
> > This is the least intrusive approach. It might probably be more readable
> > to invent a new variable that looks like $targ, but has a hierarchical
> > approach to the cpu type, for example using "arm:thumb" instead of just
> > "thumb".
> > 
> > Comments?
> 
> I like the basic idea, but there are some problems which means this
> can't go in yet...
> 
> > -  armeb-*-netbsdelf*)
> 
> NetBSD had big-endian support in config.bfd.  Why have you removed it?
> 
> Thumb as a cpu name has been deprecated for a long time now.  I suggest
> that the time has now come to just kill it (it hasn't been in the
> compiler for nearly 5 years).
> 
> Much as I'd like to do this there is, unfortunately, a more fundamental
> problem that needs to be addressed first, in that for some
> configurations (most notably Linux) config.guess does not correctly
> canonicalize the endianness spec for the CPU, so we get strings like
> armv4l and armv4b for little- and big-endian configurations
> respectively.  I'm currently trying to work through a similar issue for
> GCC and I hope to get a patch installed in config.guess to fix this
> case; but without it it means your test
> 
> +case "${targ_cpu}" in
> +  *eb)         endian=big ;;
> +  *el)         endian=little ;;
> +  *)           endian=default ;;
> +esac
> 
> won't match correctly on all ARM configurations.
> 
> Finally, I think riscix can now be considered obsolete (again, support
> in gcc was dropped some time ago).  But this is probably best left to a
> separate patch.
> 
> R.

Ooops, forgot to mention that a ChangeLog is mandatory for all
patches.   Please include one.

R.



More information about the Binutils mailing list