Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 21 Dec 2014 23:45:14 +0000 (UTC)
From:      Ian Lepore <ian@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r276045 - head/contrib/gcc/config/arm
Message-ID:  <201412212345.sBLNjEW8046807@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
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}



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201412212345.sBLNjEW8046807>