aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@arm.com>2021-12-02 15:00:56 +0000
committerRichard Sandiford <richard.sandiford@arm.com>2021-12-02 15:00:56 +0000
commit175eafaf378659f6798c5b1b7591e9a3b1abd042 (patch)
treea873fd4ab2863f20fcabace4885cbf607be2289b /gas
parenta346bb24cf3b9c71f6a66f022bf4ac80dbf0d8f8 (diff)
downloadgdb-175eafaf378659f6798c5b1b7591e9a3b1abd042.zip
gdb-175eafaf378659f6798c5b1b7591e9a3b1abd042.tar.gz
gdb-175eafaf378659f6798c5b1b7591e9a3b1abd042.tar.bz2
aarch64: Add support for Armv8.8-A
This patch adds skeleton support for -march=armv8.8-a, testing only that it correctly inherits from armv8.7-a. include/ * opcode/aarch64.h (AARCH64_FEATURE_V8_8): New macro. (AARCH64_ARCH_V8_8): Likewise. gas/ * doc/c-aarch64.texi: Document armv8.8-a. * config/tc-aarch64.c (aarch64_archs): Add armv8-8-a * testsuite/gas/aarch64/v8-8-a.s, * testsuite/gas/aarch64/v8-8-a.d: New test.
Diffstat (limited to 'gas')
-rw-r--r--gas/config/tc-aarch64.c1
-rw-r--r--gas/doc/c-aarch64.texi4
-rw-r--r--gas/testsuite/gas/aarch64/v8-8-a.d2
-rw-r--r--gas/testsuite/gas/aarch64/v8-8-a.s5
4 files changed, 10 insertions, 2 deletions
diff --git a/gas/config/tc-aarch64.c b/gas/config/tc-aarch64.c
index 497c126..2181fa1 100644
--- a/gas/config/tc-aarch64.c
+++ b/gas/config/tc-aarch64.c
@@ -9820,6 +9820,7 @@ static const struct aarch64_arch_option_table aarch64_archs[] = {
{"armv8.5-a", AARCH64_ARCH_V8_5},
{"armv8.6-a", AARCH64_ARCH_V8_6},
{"armv8.7-a", AARCH64_ARCH_V8_7},
+ {"armv8.8-a", AARCH64_ARCH_V8_8},
{"armv8-r", AARCH64_ARCH_V8_R},
{"armv9-a", AARCH64_ARCH_V9},
{NULL, AARCH64_ARCH_NONE}
diff --git a/gas/doc/c-aarch64.texi b/gas/doc/c-aarch64.texi
index 6c39963..3051b6f 100644
--- a/gas/doc/c-aarch64.texi
+++ b/gas/doc/c-aarch64.texi
@@ -110,8 +110,8 @@ issue an error message if an attempt is made to assemble an
instruction which will not execute on the target architecture. The
following architecture names are recognized: @code{armv8-a},
@code{armv8.1-a}, @code{armv8.2-a}, @code{armv8.3-a}, @code{armv8.4-a}
-@code{armv8.5-a}, @code{armv8.6-a}, @code{armv8.7-a}, @code{armv8-r}, and
-@code{armv9-a}.
+@code{armv8.5-a}, @code{armv8.6-a}, @code{armv8.7-a}, @code{armv8.8-a},
+@code{armv8-r}, and @code{armv9-a}.
If both @option{-mcpu} and @option{-march} are specified, the
assembler will use the setting for @option{-mcpu}. If neither are
diff --git a/gas/testsuite/gas/aarch64/v8-8-a.d b/gas/testsuite/gas/aarch64/v8-8-a.d
new file mode 100644
index 0000000..50fb822
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/v8-8-a.d
@@ -0,0 +1,2 @@
+# objdump: -dr
+#...
diff --git a/gas/testsuite/gas/aarch64/v8-8-a.s b/gas/testsuite/gas/aarch64/v8-8-a.s
new file mode 100644
index 0000000..f2568ef
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/v8-8-a.s
@@ -0,0 +1,5 @@
+ .arch armv8.8-a
+
+ ld64b x0, [x1]
+ dsb oshnxs
+ msr hcrx_el2, x0