From: Richard Earnshaw <Richard.Earnshaw@arm.com>
To: gcc-patches@gcc.gnu.org
Cc: Richard Earnshaw <Richard.Earnshaw@arm.com>
Subject: [PATCH 28/30] [arm] Add a few missing architecture extension options.
Date: Fri, 09 Jun 2017 12:54:00 -0000 [thread overview]
Message-ID: <01975565dd108d24c024c0e0fe042e3682b3ba95.1497004220.git.Richard.Earnshaw@arm.com> (raw)
In-Reply-To: <cover.1497004220.git.Richard.Earnshaw@arm.com>
In-Reply-To: <cover.1497004220.git.Richard.Earnshaw@arm.com>
[-- Attachment #1: Type: text/plain, Size: 604 bytes --]
Reviewing the list of options for the purposes of writing the
documentation revealed that a small number of options were missing.
Mostly these are aliases for existing options, but in a couple of
cases we lacked the ability to disable certain other options.
* config/arm/arm-cpus.in (armv7): Add extension +nofp.
(armv7-r): Add aliases vfpv3xd and vfpv3-d16.
(armv8-m.main): Add option +nodsp.
* config/arm/arm-cpu-cdata.h: Regenerated.
---
gcc/config/arm/arm-cpu-cdata.h | 24 ++++++++++++++++++++++++
gcc/config/arm/arm-cpus.in | 6 ++++++
2 files changed, 30 insertions(+)
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0028-arm-Add-a-few-missing-architecture-extension-options.patch --]
[-- Type: text/x-patch; name="0028-arm-Add-a-few-missing-architecture-extension-options.patch", Size: 2692 bytes --]
diff --git a/gcc/config/arm/arm-cpu-cdata.h b/gcc/config/arm/arm-cpu-cdata.h
index ddfb05c..6cc2ea2 100644
--- a/gcc/config/arm/arm-cpu-cdata.h
+++ b/gcc/config/arm/arm-cpu-cdata.h
@@ -1856,6 +1856,10 @@ static const struct cpu_arch_extension arch_opttab_armv7[] = {
{ ISA_VFPv3,ISA_FP_DBL, isa_nobit }
},
{
+ "nofp", true, false,
+ { ISA_ALL_FP, isa_nobit }
+ },
+ {
"vfpv3-d16", false, true,
{ ISA_VFPv3,ISA_FP_DBL, isa_nobit }
},
@@ -2003,6 +2007,14 @@ static const struct cpu_arch_extension arch_opttab_armv7_r[] = {
"noidiv", true, false,
{ isa_bit_adiv, isa_nobit }
},
+ {
+ "vfpv3xd", false, true,
+ { ISA_VFPv3, isa_nobit }
+ },
+ {
+ "vfpv3-d16", false, true,
+ { ISA_VFPv3,ISA_FP_DBL, isa_nobit }
+ },
{ NULL, false, false, {isa_nobit}}
};
@@ -2023,6 +2035,14 @@ static const struct cpu_arch_extension arch_opttab_armv7e_m[] = {
"nofp", true, false,
{ ISA_ALL_FP, isa_nobit }
},
+ {
+ "vfpv4-sp-d16", false, true,
+ { ISA_VFPv4, isa_nobit }
+ },
+ {
+ "fpv5-d16", false, true,
+ { ISA_FPv5,ISA_FP_DBL, isa_nobit }
+ },
{ NULL, false, false, {isa_nobit}}
};
@@ -2111,6 +2131,10 @@ static const struct cpu_arch_extension arch_opttab_armv8_m_main[] = {
"nofp", true, false,
{ ISA_ALL_FP, isa_nobit }
},
+ {
+ "nodsp", true, false,
+ { isa_bit_ARMv7em, isa_nobit }
+ },
{ NULL, false, false, {isa_nobit}}
};
diff --git a/gcc/config/arm/arm-cpus.in b/gcc/config/arm/arm-cpus.in
index 739de45..b0c0eae 100644
--- a/gcc/config/arm/arm-cpus.in
+++ b/gcc/config/arm/arm-cpus.in
@@ -228,6 +228,7 @@ begin arch armv7
# fp => VFPv3-d16 (only useful for the A+R profile subset).
option fp add VFPv3 FP_DBL
optalias vfpv3-d16 fp
+ option nofp remove ALL_FP
end arch armv7
begin arch armv7-a
@@ -281,7 +282,9 @@ begin arch armv7-r
isa ARMv7r
# ARMv7-r uses VFPv3-d16
option fp.sp add VFPv3
+ optalias vfpv3xd fp.sp
option fp add VFPv3 FP_DBL
+ optalias vfpv3-d16 fp
option idiv add bit_adiv
option nofp remove ALL_FP
option noidiv remove bit_adiv
@@ -303,8 +306,10 @@ begin arch armv7e-m
isa ARMv7em
# fp => VFPv4-sp-d16; fpv5 => FPv5-sp-d16; fp.dp => FPv5-d16
option fp add VFPv4
+ optalias vfpv4-sp-d16 fp
option fpv5 add FPv5
option fp.dp add FPv5 FP_DBL
+ optalias fpv5-d16 fp.dp
option nofp remove ALL_FP
end arch armv7e-m
@@ -359,6 +364,7 @@ begin arch armv8-m.main
option fp add FPv5
option fp.dp add FPv5 FP_DBL
option nofp remove ALL_FP
+ option nodsp remove bit_ARMv7em
end arch armv8-m.main
begin arch iwmmxt
next prev parent reply other threads:[~2017-06-09 12:54 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-09 12:54 [PATCH 00/30] [ARM] Reworking the -mcpu, -march and -mfpu options Richard Earnshaw
2017-06-09 12:54 ` [PATCH 17/30] [arm] Make 'auto' the default FPU selection option Richard Earnshaw
2017-06-09 12:54 ` [PATCH 04/30] [arm] Allow +opt on arbitrary cpu and architecture specifications Richard Earnshaw
2017-06-13 17:14 ` Richard Earnshaw (lists)
2017-06-09 12:54 ` [PATCH 23/30] [arm][rtems] Update t-rtems for new option framework Richard Earnshaw
2017-06-09 13:03 ` Sebastian Huber
2017-06-09 12:54 ` [PATCH 18/30] [arm] Rewrite t-aprofile using new selector methodology Richard Earnshaw
2017-06-09 12:54 ` Richard Earnshaw [this message]
2017-06-09 12:54 ` [PATCH 10/30] [arm] Use standard option parsing code for detecting thumb-only targets Richard Earnshaw
2017-06-09 12:54 ` [PATCH 05/30] [arm] Add architectural options Richard Earnshaw
2017-06-09 12:54 ` [PATCH 06/30] [arm] Add default FPUs for CPUs Richard Earnshaw
2017-06-09 12:54 ` [PATCH 29/30] [arm][doc] Document new -march= syntax Richard Earnshaw
2017-06-09 12:54 ` [PATCH 02/30] [arm] Rewrite -march and -mcpu options for passing to the assembler Richard Earnshaw
2017-06-09 12:54 ` [PATCH 12/30] [arm] Allow new extended syntax CPU and architecture names during configure Richard Earnshaw
2017-06-09 12:54 ` [PATCH 25/30] [arm][phoenix] reset all multilib variables Richard Earnshaw
2017-06-09 12:54 ` [PATCH 24/30] [arm][linux-eabi] Ensure all multilib variables are reset Richard Earnshaw
2017-06-09 12:55 ` [PATCH 08/30] [arm] Split CPU, architecture and tuning data tables Richard Earnshaw
2017-06-13 17:17 ` Richard Earnshaw (lists)
2017-06-09 12:55 ` [PATCH 27/30] [arm][fuchsia] Rework multilib support Richard Earnshaw
2017-06-09 12:55 ` [PATCH 13/30] [arm] Force a CPU default in the config args defaults list Richard Earnshaw
2017-06-09 12:55 ` [PATCH 07/30] [build] Make sbitmap code available to the driver programs Richard Earnshaw
2017-06-14 14:35 ` Richard Earnshaw (lists)
2017-06-16 8:03 ` Richard Biener
2017-06-09 12:55 ` [PATCH 22/30] [arm] Rewrite t-rmprofile multilib specification Richard Earnshaw
2017-06-09 12:55 ` [PATCH 09/30] [ARM] Move cpu and architecture option name parsing code to arm-common.c Richard Earnshaw
2017-06-13 17:19 ` Richard Earnshaw (lists)
2017-06-09 12:55 ` [PATCH 16/30] [arm] Update basic multilib configuration Richard Earnshaw
2017-06-09 12:55 ` [PATCH 11/30] [arm] Allow CPU and architecture extensions to be defined as aliases Richard Earnshaw
2017-06-09 12:55 ` [PATCH 01/30] [arm] Use strings for -march, -mcpu and -mtune options Richard Earnshaw
2017-06-13 13:23 ` Christophe Lyon
2017-06-13 15:33 ` Richard Earnshaw (lists)
2017-06-13 17:11 ` Richard Earnshaw (lists)
2017-06-09 12:55 ` [PATCH 21/30] [arm][testsuite] Use -march=armv7-a+fp when testing hard-float ABI Richard Earnshaw
2017-06-09 12:55 ` [PATCH 14/30] [arm] Generate a canonical form for -march Richard Earnshaw
2017-06-13 17:25 ` Richard Earnshaw (lists)
2017-06-09 12:55 ` [PATCH 26/30] [arm] Rework multlib builds for symbianelf Richard Earnshaw
2017-06-09 12:55 ` [PATCH 15/30] [arm] Make -mfloat-abi=softfp work when there are no FPU instructions Richard Earnshaw
2017-06-09 12:55 ` [PATCH 19/30] [arm] Explicitly set .fpu in cmse_nonsecure_call.S Richard Earnshaw
2017-06-09 12:55 ` [PATCH 03/30] [arm] Don't pass -mfpu=auto through to the assembler Richard Earnshaw
2017-06-09 12:55 ` [PATCH 30/30] [arm][doc] Document changes to -mcpu, -mtune and -mfpu Richard Earnshaw
2017-06-09 22:19 ` Gerald Pfeifer
2017-06-09 12:55 ` [PATCH 20/30] [genmultilib] Allow explicit periods to be escaped in MULTILIB_REUSE Richard Earnshaw
2017-06-09 22:45 ` [PATCH 00/30] [ARM] Reworking the -mcpu, -march and -mfpu options Christophe Lyon
2017-06-09 23:27 ` Richard Earnshaw (lists)
2017-06-12 11:49 ` Christophe Lyon
2017-06-12 14:34 ` Richard Earnshaw (lists)
2017-06-12 17:11 ` Joseph Myers
2017-06-12 21:27 ` Richard Earnshaw (lists)
2017-06-13 9:40 ` Richard Earnshaw (lists)
2017-06-13 10:29 ` Joseph Myers
2017-06-13 15:26 ` Richard Earnshaw (lists)
2017-06-13 16:08 ` Christophe Lyon
2017-06-12 11:48 ` Nathan Sidwell
2017-06-13 17:27 ` [PATCH 31/30] [arm] Mark -marm and -mthumb as being inverse options Richard Earnshaw (lists)
2017-06-13 17:29 ` [PATCH 32/30][arm][testsuite] Fix neon-thumb2-move.c test Richard Earnshaw (lists)
2017-06-14 14:27 ` [PATCH 32/30][arm][testsuite] Fix various tests Richard Earnshaw (lists)
2017-06-14 19:26 ` Christophe Lyon
2017-06-13 17:36 ` [PATCH 00/30] [ARM] Reworking the -mcpu, -march and -mfpu options Richard Earnshaw (lists)
2017-06-14 9:08 ` Christophe Lyon
2017-06-14 10:21 ` Richard Earnshaw (lists)
2017-06-16 21:11 ` Richard Earnshaw
2017-06-16 21:16 ` Ramana Radhakrishnan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=01975565dd108d24c024c0e0fe042e3682b3ba95.1497004220.git.Richard.Earnshaw@arm.com \
--to=richard.earnshaw@arm.com \
--cc=gcc-patches@gcc.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).