Hi all,
This patch fixes the encoding of the immediate in the A64C ldtr/sttr instructions. Prior to this patch, GAS would accept immediates for these instructions that were not multiples of 16, and would not scale the immediate by 16.
Regression tested on aarch64-linux-gnu, OK for users/ARM/morello-binutils-gdb-master?
Thanks, Alex
---
gas/ChangeLog:
2021-09-24 Alex Coplan alex.coplan@arm.com
* testsuite/gas/aarch64/morello_ldst-c64.d: Update following test + encoding change. * testsuite/gas/aarch64/morello_ldst-invalid.d: New test. * testsuite/gas/aarch64/morello_ldst-invalid.l: New test. * testsuite/gas/aarch64/morello_ldst-invalid.s: New test. * testsuite/gas/aarch64/morello_ldst.d: Update following test + encoding change. * testsuite/gas/aarch64/morello_ldst.s: Update to use valid immediates for ldtr/sttr instructions.
opcodes/ChangeLog:
2021-09-24 Alex Coplan alex.coplan@arm.com
* aarch64-tbl.h (aarch64_opcode_table): Update A64C_INSNs ldtr/sttr to take A64C_ADDR_SIMM9 instead of ADDR_SIMM9 operands.