This is the mail archive of the binutils@sources.redhat.com 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: RFC: consolidate ARM config for BFD


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.


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