diff options
author | emaste <emaste@FreeBSD.org> | 2017-03-03 00:39:29 +0000 |
---|---|---|
committer | emaste <emaste@FreeBSD.org> | 2017-03-03 00:39:29 +0000 |
commit | c92da57c43b8d5b4efdfcb0c5c23bd5ad089f47a (patch) | |
tree | cc9b8357621bbe1c7c2c25fd14b6891e021295f7 | |
parent | e80ebe3963280798bf09421ffe774092ea3963e2 (diff) | |
download | FreeBSD-src-c92da57c43b8d5b4efdfcb0c5c23bd5ad089f47a.zip FreeBSD-src-c92da57c43b8d5b4efdfcb0c5c23bd5ad089f47a.tar.gz |
MFC r312899: add octeon+ as an alias for octeon in GCC & binutils
r208737 added support for the "mips64r2" architecture and "octeon" CPU,
and the saa/saad instructions.
Upstream binutils also added the "octeon+" CPU, and the saa/saad
instructions are only available in octeon+, not octeon. Since our
base system tool chain already accepts saa/saad with -march=octeon,
just allow octeon+ as an alias.
This allows the use of octeon+ in kernel config files, for use with both
external tool chain and in-tree GCC/binutils.
Also includes GCC FBSD_CC_VER bump (r313041 in HEAD)
PR: 216516
Sponsored by: The FreeBSD Foundation
-rw-r--r-- | contrib/binutils/gas/config/tc-mips.c | 1 | ||||
-rw-r--r-- | contrib/gcc/config/mips/mips.c | 1 | ||||
-rw-r--r-- | contrib/gcc/config/mips/mips.h | 5 | ||||
-rw-r--r-- | gnu/usr.bin/cc/cc_tools/freebsd-native.h | 2 |
4 files changed, 7 insertions, 2 deletions
diff --git a/contrib/binutils/gas/config/tc-mips.c b/contrib/binutils/gas/config/tc-mips.c index 80fdfd0..d1f745e 100644 --- a/contrib/binutils/gas/config/tc-mips.c +++ b/contrib/binutils/gas/config/tc-mips.c @@ -15156,6 +15156,7 @@ static const struct mips_cpu_info mips_cpu_info_table[] = /* Cavium Networks Octeon CPU core */ { "octeon", 0, ISA_MIPS64R2, CPU_OCTEON }, + { "octeon+", 0, ISA_MIPS64R2, CPU_OCTEON }, /* End marker */ { NULL, 0, 0, 0 } diff --git a/contrib/gcc/config/mips/mips.c b/contrib/gcc/config/mips/mips.c index faa4e46..5a7792c 100644 --- a/contrib/gcc/config/mips/mips.c +++ b/contrib/gcc/config/mips/mips.c @@ -765,6 +765,7 @@ const struct mips_cpu_info mips_cpu_info_table[] = { /* MIPS64R2 */ { "octeon", PROCESSOR_OCTEON, 65 }, + { "octeon+", PROCESSOR_OCTEON, 65 }, /* End marker */ { 0, 0, 0 } diff --git a/contrib/gcc/config/mips/mips.h b/contrib/gcc/config/mips/mips.h index 1ba1402..cba35a2 100644 --- a/contrib/gcc/config/mips/mips.h +++ b/contrib/gcc/config/mips/mips.h @@ -285,7 +285,10 @@ extern const struct mips_rtx_cost_data *mips_cost; \ macro = concat ((PREFIX), "_", (INFO)->name, NULL); \ for (p = macro; *p != 0; p++) \ - *p = TOUPPER (*p); \ + if (*p == '+') \ + *p = 'P'; \ + else \ + *p = TOUPPER (*p); \ \ builtin_define (macro); \ builtin_define_with_value ((PREFIX), (INFO)->name, 1); \ diff --git a/gnu/usr.bin/cc/cc_tools/freebsd-native.h b/gnu/usr.bin/cc/cc_tools/freebsd-native.h index bd3ce1e..b92a596 100644 --- a/gnu/usr.bin/cc/cc_tools/freebsd-native.h +++ b/gnu/usr.bin/cc/cc_tools/freebsd-native.h @@ -8,7 +8,7 @@ /* Fake out gcc/config/freebsd<version>.h. */ #define FBSD_MAJOR 11 -#define FBSD_CC_VER 1100002 /* form like __FreeBSD_version */ +#define FBSD_CC_VER 1100003 /* form like __FreeBSD_version */ #undef SYSTEM_INCLUDE_DIR /* We don't need one for now. */ #undef TOOL_INCLUDE_DIR /* We don't need one for now. */ |