svn commit: r276045 - head/contrib/gcc/config/arm

Ian Lepore ian at FreeBSD.org
Sun Dec 21 23:45:14 UTC 2014


Author: ian
Date: Sun Dec 21 23:45:13 2014
New Revision: 276045
URL: https://svnweb.freebsd.org/changeset/base/276045

Log:
  Allow -march=armv7a on the gcc command line, for compatibility with clang.
  This will result in __ARM_ARCH_7A__ being defined during the compile.
  
  When compiling with gcc, it will still only generate armv6 opcodes itself,
  but should pass the arch to gas so that inline asm can use v7 opcodes.

Modified:
  head/contrib/gcc/config/arm/arm.c

Modified: head/contrib/gcc/config/arm/arm.c
==============================================================================
--- head/contrib/gcc/config/arm/arm.c	Sun Dec 21 23:28:53 2014	(r276044)
+++ head/contrib/gcc/config/arm/arm.c	Sun Dec 21 23:45:13 2014	(r276045)
@@ -604,6 +604,8 @@ static const struct processors all_archi
   {"armv6k",  mpcore,	  "6K",  FL_CO_PROC |             FL_FOR_ARCH6K, NULL},
   {"armv6z",  arm1176jzs, "6Z",  FL_CO_PROC |             FL_FOR_ARCH6Z, NULL},
   {"armv6zk", arm1176jzs, "6ZK", FL_CO_PROC |             FL_FOR_ARCH6ZK, NULL},
+  /* Clang compatibility... define __ARM_ARCH_7A__, but codegen is still 6ZK. */
+  {"armv7a",  arm1176jzs, "7A",  FL_CO_PROC |             FL_FOR_ARCH6ZK, NULL},
   {"ep9312",  ep9312,     "4T",  FL_LDSCHED | FL_CIRRUS | FL_FOR_ARCH4, NULL},
   {"iwmmxt",  iwmmxt,     "5TE", FL_LDSCHED | FL_STRONG | FL_FOR_ARCH5TE | FL_XSCALE | FL_IWMMXT , NULL},
   {NULL, arm_none, NULL, 0 , NULL}


More information about the svn-src-all mailing list