TARGET_ARCH=armv6

Tim Kientzle kientzle at freebsd.org
Sat Jul 7 05:26:38 UTC 2012


On Jul 4, 2012, at 4:51 PM, Tim Kientzle wrote:

> Attached patch adds full support to the projects/armv6 tree for
> building with TARGET_ARCH=armv6 (*instead of* TARGET_CPUTYPE).
> 
> I intend to commit this to the armv6 tree after I finish some more test builds (likely a few days).
> 
> Most of this is copied from Warner's work[0], though I've filled in a
> few additional pieces.  To wit:
> * GCC defaults to arm1176jz-s processor instead of StrongARM
> * GCC defines __FreeBSD_ARCH_armv6__  and sys/param.h sets MACHINE_ARCH to armv6 when it sees this.  This persists the 'armv6' architecture setting through native rebuilds.
> * gas defaults to ARM_ARCH_V6K
> * uname -p returns 'armv6'
> * make -V MACHINE_ARCH defaults to 'armv6'
> * WANT_TP_ADDRESS is now assumed for any processor < ARMv6K (as set by the compiler's CPU settings)
> 
> The other renaming and refactoring I proposed recently isn't yet complete here; I want to make sure this is stable and get it committed before I churn the tree again.  ;-)

Hoping to commit this weekend.  Any feedback or
testing would be much appreciated.

I would also appreciate help with fixing clang:
   * Right now, TARGET_ARCH=armv6 doesn't build clang.
   * clang doesn't support armv6-unknown-freebsd10.0
   * I have no idea how to use clang to cross-build the armv6 tree (which will obviously be needed if clang is ever going to replace gcc).

Tim



More information about the freebsd-arm mailing list