diff options
author | Sudakshina Das <sudi.das@arm.com> | 2020-04-20 10:50:52 +0100 |
---|---|---|
committer | Sudakshina Das <sudi.das@arm.com> | 2020-04-20 10:50:52 +0100 |
commit | 8a6e1d1d7f2fb09245fe42f7b8dc6d53f61df1d1 (patch) | |
tree | 1b2be15fc82d86079b45a1d3596d7fcaaf335304 /gas | |
parent | 3052c068aa737824a035e72f65de18524fd2aad5 (diff) | |
download | gdb-8a6e1d1d7f2fb09245fe42f7b8dc6d53f61df1d1.zip gdb-8a6e1d1d7f2fb09245fe42f7b8dc6d53f61df1d1.tar.gz gdb-8a6e1d1d7f2fb09245fe42f7b8dc6d53f61df1d1.tar.bz2 |
[AArch64, Binutils] Make hint space instructions valid for Armv8-a
There are a few instruction in AArch64 that are in the HINT space. Any of
these instructions should be accepted by the assembler/disassembler at any
architecture version. This patch fixes the existing instructions that are
not behaving accordingly.
I have used all of the instructions mentioned in the following to make the
changes:
https://developer.arm.com/docs/ddi0596/f/base-instructions-alphabetic-order/
hint-hint-instruction
gas/ChangeLog:
2020-04-20 Sudakshina Das <sudi.das@arm.com>
* testsuite/gas/aarch64/bti.d: Update -march option.
* testsuite/gas/aarch64/illegal-bti.d: Remove.
* testsuite/gas/aarch64/illegal-bti.l: Remove.
* testsuite/gas/aarch64/illegal-ras-1.l: Remove esb.
* testsuite/gas/aarch64/illegal-ras-1.s: Remove esb.
opcodes/ChangeLog:
2020-04-20 Sudakshina Das <sudi.das@arm.com>
* aarch64-tbl.h (aarch64_feature_bti, BTI, BTI_INSN): Remove.
(aarch64_feature_ras, RAS): Likewise.
(aarch64_feature_stat_profile, STAT_PROFILE): Likewise.
(aarch64_opcode_table): Update bti, xpaclri, pacia1716, pacib1716,
autia1716, autib1716, esb, psb, dgh, paciaz, paciasp, pacibz, pacibsp,
autiaz, autiasp, autibz, autibsp to be CORE_INSN.
* aarch64-asm-2.c: Regenerated.
* aarch64-dis-2.c: Regenerated.
* aarch64-opc-2.c: Regenerated.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 8 | ||||
-rw-r--r-- | gas/testsuite/gas/aarch64/bti.d | 2 | ||||
-rw-r--r-- | gas/testsuite/gas/aarch64/illegal-bti.d | 3 | ||||
-rw-r--r-- | gas/testsuite/gas/aarch64/illegal-bti.l | 8 | ||||
-rw-r--r-- | gas/testsuite/gas/aarch64/illegal-ras-1.l | 2 | ||||
-rw-r--r-- | gas/testsuite/gas/aarch64/illegal-ras-1.s | 2 |
6 files changed, 9 insertions, 16 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 345c112..c03a9e6 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,11 @@ +2020-04-20 Sudakshina Das <sudi.das@arm.com> + + * testsuite/gas/aarch64/bti.d: Update -march option. + * testsuite/gas/aarch64/illegal-bti.d: Remove. + * testsuite/gas/aarch64/illegal-bti.l: Remove. + * testsuite/gas/aarch64/illegal-ras-1.l: Remove esb. + * testsuite/gas/aarch64/illegal-ras-1.s: Remove esb. + 2020-04-17 Alan Modra <amodra@gmail.com> * config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot. diff --git a/gas/testsuite/gas/aarch64/bti.d b/gas/testsuite/gas/aarch64/bti.d index e1ac700..434efa3 100644 --- a/gas/testsuite/gas/aarch64/bti.d +++ b/gas/testsuite/gas/aarch64/bti.d @@ -1,4 +1,4 @@ -#as: -march=armv8.5-a +#as: -march=armv8-a #objdump: -dr .*: file format .* diff --git a/gas/testsuite/gas/aarch64/illegal-bti.d b/gas/testsuite/gas/aarch64/illegal-bti.d deleted file mode 100644 index 174d97a..0000000 --- a/gas/testsuite/gas/aarch64/illegal-bti.d +++ /dev/null @@ -1,3 +0,0 @@ -#as: -march=armv8-a -#source: bti.s -#error_output: illegal-bti.l diff --git a/gas/testsuite/gas/aarch64/illegal-bti.l b/gas/testsuite/gas/aarch64/illegal-bti.l deleted file mode 100644 index d18f8c5..0000000 --- a/gas/testsuite/gas/aarch64/illegal-bti.l +++ /dev/null @@ -1,8 +0,0 @@ -[^:]*: Assembler messages: -[^:]*:[0-9]+: Error: selected processor does not support `bti' -[^:]*:[0-9]+: Error: selected processor does not support `bti c' -[^:]*:[0-9]+: Error: selected processor does not support `bti j' -[^:]*:[0-9]+: Error: selected processor does not support `bti jc' -[^:]*:[0-9]+: Error: selected processor does not support `bti C' -[^:]*:[0-9]+: Error: selected processor does not support `bti J' -[^:]*:[0-9]+: Error: selected processor does not support `bti JC' diff --git a/gas/testsuite/gas/aarch64/illegal-ras-1.l b/gas/testsuite/gas/aarch64/illegal-ras-1.l index e8803e5..bf8ca6b 100644 --- a/gas/testsuite/gas/aarch64/illegal-ras-1.l +++ b/gas/testsuite/gas/aarch64/illegal-ras-1.l @@ -1,5 +1,4 @@ [^:]+: Assembler messages: -^[^:]+:[0-9]+: Error: selected processor does not support `esb' ^[^:]+:[0-9]+: Error: selected processor does not support system register name 'erridr_el1' ^[^:]+:[0-9]+: Error: selected processor does not support system register name 'errselr_el1' ^[^:]+:[0-9]+: Error: selected processor does not support system register name 'errselr_el1' @@ -18,7 +17,6 @@ ^[^:]+:[0-9]+: Error: selected processor does not support system register name 'disr_el1' ^[^:]+:[0-9]+: Error: selected processor does not support system register name 'disr_el1' ^[^:]+:[0-9]+: Error: selected processor does not support system register name 'vdisr_el2' -^[^:]+:[0-9]+: Error: selected processor does not support `esb' ^[^:]+:[0-9]+: Error: selected processor does not support system register name 'erridr_el1' ^[^:]+:[0-9]+: Error: selected processor does not support system register name 'errselr_el1' ^[^:]+:[0-9]+: Error: selected processor does not support system register name 'errselr_el1' diff --git a/gas/testsuite/gas/aarch64/illegal-ras-1.s b/gas/testsuite/gas/aarch64/illegal-ras-1.s index 5d61fb7..ae85e8d 100644 --- a/gas/testsuite/gas/aarch64/illegal-ras-1.s +++ b/gas/testsuite/gas/aarch64/illegal-ras-1.s @@ -12,7 +12,6 @@ /* ARMv8-A. */ .arch armv8-a - esb hint #0x10 rw_sys_reg sys_reg=erridr_el1 xreg=x5 r=1 w=0 @@ -33,7 +32,6 @@ /* ARMv8.1-A. */ .arch armv8.1-a - esb hint #0x10 rw_sys_reg sys_reg=erridr_el1 xreg=x5 r=1 w=0 |