diff options
author | Tamar Christina <tamar.christina@arm.com> | 2018-10-03 18:51:11 +0100 |
---|---|---|
committer | Tamar Christina <tamar.christina@arm.com> | 2018-10-03 18:51:58 +0100 |
commit | bde90be2cddc06371ee80a258bf6855d0f346324 (patch) | |
tree | 21c071ccc885044550b711ab68eec36041193365 /opcodes/aarch64-opc.c | |
parent | 4f5d2536289c0aedc3234f1bff6e9f4284f267c5 (diff) | |
download | gdb-bde90be2cddc06371ee80a258bf6855d0f346324.zip gdb-bde90be2cddc06371ee80a258bf6855d0f346324.tar.gz gdb-bde90be2cddc06371ee80a258bf6855d0f346324.tar.bz2 |
AArch64: Constraint disassembler and assembler changes.
This patch wires in the new constraint verifiers into the assembler and
disassembler. Because of this the MOVPRFX tests have to be split out from the
generic SVE tests into their own tests so warnings can be ignored.
These tests are only intended to test the encoding correctness and not the
constraints.
gas/
* testsuite/gas/aarch64/sve-movprfx.d: New test.
* testsuite/gas/aarch64/sve-movprfx.s: New test.
* testsuite/gas/aarch64/sve.d: Refactor.
* testsuite/gas/aarch64/sve.s: Refactor.
* testsuite/gas/aarch64/sysreg-diagnostic.d: Update.
opcodes/
* aarch64-asm.c (aarch64_opcode_encode): Apply constraint verifier.
* aarch64-dis.c (print_operands): Refactor to take notes.
(print_verifier_notes): New.
(print_aarch64_insn): Apply constraint verifier.
(print_insn_aarch64_word): Update call to print_aarch64_insn.
* aarch64-opc.c (aarch64_print_operand): Remove attribute, update notes format.
Diffstat (limited to 'opcodes/aarch64-opc.c')
-rw-r--r-- | opcodes/aarch64-opc.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/opcodes/aarch64-opc.c b/opcodes/aarch64-opc.c index c28cac4..3f62e2a 100644 --- a/opcodes/aarch64-opc.c +++ b/opcodes/aarch64-opc.c @@ -3052,7 +3052,7 @@ void aarch64_print_operand (char *buf, size_t size, bfd_vma pc, const aarch64_opcode *opcode, const aarch64_opnd_info *opnds, int idx, int *pcrel_p, - bfd_vma *address, char** notes ATTRIBUTE_UNUSED) + bfd_vma *address, char** notes) { unsigned int i, num_conds; const char *name = NULL; @@ -3600,9 +3600,9 @@ aarch64_print_operand (char *buf, size_t size, bfd_vma pc, F_REG_READ is there, that means we were looking for a write register. See aarch64_ext_sysreg. */ if (aarch64_sys_regs[i].flags & F_REG_WRITE) - *notes = _("reading from a write-only register."); + *notes = _("reading from a write-only register"); else if (aarch64_sys_regs[i].flags & F_REG_READ) - *notes = _("writing to a read-only register."); + *notes = _("writing to a read-only register"); } } |