summaryrefslogtreecommitdiff
path: root/0113-Backport-SME-aarch64-Small-config.gcc-cleanups.patch
diff options
context:
space:
mode:
Diffstat (limited to '0113-Backport-SME-aarch64-Small-config.gcc-cleanups.patch')
-rw-r--r--0113-Backport-SME-aarch64-Small-config.gcc-cleanups.patch55
1 files changed, 55 insertions, 0 deletions
diff --git a/0113-Backport-SME-aarch64-Small-config.gcc-cleanups.patch b/0113-Backport-SME-aarch64-Small-config.gcc-cleanups.patch
new file mode 100644
index 0000000..1b14c18
--- /dev/null
+++ b/0113-Backport-SME-aarch64-Small-config.gcc-cleanups.patch
@@ -0,0 +1,55 @@
+From aac2b2d4191d08a107c3ff8d98602355988a5558 Mon Sep 17 00:00:00 2001
+From: Richard Sandiford <richard.sandiford@arm.com>
+Date: Thu, 29 Sep 2022 11:32:52 +0100
+Subject: [PATCH 014/157] [Backport][SME] aarch64: Small config.gcc cleanups
+
+Reference: https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=0af214b447529453b356e8e480d7d35b3e642f0e
+
+The aarch64-option-extensions.def parsing in config.gcc had
+some code left over from when it tried to parse the whole
+macro definition. Also, config.gcc now only looks at the
+first fields of the aarch64-arches.def entries.
+
+gcc/
+ * config.gcc: Remove dead aarch64-option-extensions.def code.
+ * config/aarch64/aarch64-arches.def: Update comment.
+---
+ gcc/config.gcc | 8 --------
+ gcc/config/aarch64/aarch64-arches.def | 2 +-
+ 2 files changed, 1 insertion(+), 9 deletions(-)
+
+diff --git a/gcc/config.gcc b/gcc/config.gcc
+index 3be450471..da66603cd 100644
+--- a/gcc/config.gcc
++++ b/gcc/config.gcc
+@@ -4210,14 +4210,6 @@ case "${target}" in
+ options_parsed="`$ac_cv_prog_CPP -D"$opt_macro" -x c \
+ ${srcdir}/config/aarch64/aarch64-option-extensions.def`"
+
+- # Match one element inside AARCH64_OPT_EXTENSION, we
+- # consume anything that's not a ,.
+- elem="[ ]*\([^,]\+\)[ ]*"
+-
+- # Repeat the pattern for the number of entries in the
+- # AARCH64_OPT_EXTENSION, currently 6 times.
+- sed_patt="^$elem,$elem,$elem,$elem,$elem,$elem"
+-
+ while [ x"$ext_val" != x ]
+ do
+ ext_val=`echo $ext_val | sed -e 's/\+//'`
+diff --git a/gcc/config/aarch64/aarch64-arches.def b/gcc/config/aarch64/aarch64-arches.def
+index e42202822..ece96e22a 100644
+--- a/gcc/config/aarch64/aarch64-arches.def
++++ b/gcc/config/aarch64/aarch64-arches.def
+@@ -28,7 +28,7 @@
+ ARCH_REV is an integer specifying the architecture major revision.
+ FLAGS are the flags implied by the architecture.
+ Due to the assumptions about the positions of these fields in config.gcc,
+- the NAME should be kept as the first argument and FLAGS as the last. */
++ NAME should be kept as the first argument. */
+
+ AARCH64_ARCH("armv8-a", generic, V8A, 8, AARCH64_FL_FOR_V8A)
+ AARCH64_ARCH("armv8.1-a", generic, V8_1A, 8, AARCH64_FL_FOR_V8_1A)
+--
+2.33.0
+