diff options
author | Matthew Wahab <matthew.wahab@arm.com> | 2015-11-27 15:39:12 +0000 |
---|---|---|
committer | Matthew Wahab <matthew.wahab@arm.com> | 2015-11-27 15:39:12 +0000 |
commit | 64357d2e04994ba161b4a99ef2bc45db0c180ea0 (patch) | |
tree | ac8dc52a020827c68bda9666800e021c6dbcdb1b /gas | |
parent | d685192a58d4c198633bd0e69cfe0a114576e98a (diff) | |
download | gdb-64357d2e04994ba161b4a99ef2bc45db0c180ea0.zip gdb-64357d2e04994ba161b4a99ef2bc45db0c180ea0.tar.gz gdb-64357d2e04994ba161b4a99ef2bc45db0c180ea0.tar.bz2 |
[AArch64] Add ARMv8.2 instruction alias REV64.
This patch adds the alias REV64 <Rd>, <Rs> as an alias for REV <Rd>,
<Rs>. However, REV is still the preferred form for the instruction.
gas/testsuite/
2015-11-27 Matthew Wahab <matthew.wahab@arm.com>
* gas/aarch64/alias-2.d: Add tests for REV.
* gas/aarch64/alias-2.s: Likewise.
opcodes/
2015-11-27 Matthew Wahab <matthew.wahab@arm.com>
* aarch64-asm-2.c: Regenerate.
* aarch64-dis-2.c: Regenerate.
* aarch64-opc-2.c: Regenerate.
* aarch64-tbl.h (aarchr64_opcode_table): Update "rev", add
"rev64".
Change-Id: I331567c8d3618ba9fec1673c6e0b5977222dde61
Diffstat (limited to 'gas')
-rw-r--r-- | gas/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gas/testsuite/gas/aarch64/alias-2.d | 12 | ||||
-rw-r--r-- | gas/testsuite/gas/aarch64/alias-2.s | 12 |
3 files changed, 29 insertions, 0 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 29e501a..1f1b863 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2015-11-27 Matthew Wahab <matthew.wahab@arm.com> + * gas/aarch64/alias-2.d: Add tests for REV. + * gas/aarch64/alias-2.s: Likewise. + +2015-11-27 Matthew Wahab <matthew.wahab@arm.com> + * gas/aarch64/alias-2.d: New. * gas/aarch64/alias-2.s: New. diff --git a/gas/testsuite/gas/aarch64/alias-2.d b/gas/testsuite/gas/aarch64/alias-2.d index 92ed58f..64a94a4 100644 --- a/gas/testsuite/gas/aarch64/alias-2.d +++ b/gas/testsuite/gas/aarch64/alias-2.d @@ -96,3 +96,15 @@ Disassembly of section \.text: [0-9a-f]+: b3611fff bfc xzr, #31, #8 [0-9a-f]+: b3403be0 bfxil x0, xzr, #0, #15 [0-9a-f]+: b3613bff bfc xzr, #31, #15 + [0-9a-f]+: dac00fe0 rev x0, xzr + [0-9a-f]+: dac00c20 rev x0, x1 + [0-9a-f]+: dac00c3f rev xzr, x1 + [0-9a-f]+: dac00fff rev xzr, xzr + [0-9a-f]+: dac007e0 rev16 x0, xzr + [0-9a-f]+: dac00420 rev16 x0, x1 + [0-9a-f]+: dac0043f rev16 xzr, x1 + [0-9a-f]+: dac007ff rev16 xzr, xzr + [0-9a-f]+: dac00fe0 rev x0, xzr + [0-9a-f]+: dac00c20 rev x0, x1 + [0-9a-f]+: dac00c3f rev xzr, x1 + [0-9a-f]+: dac00fff rev xzr, xzr diff --git a/gas/testsuite/gas/aarch64/alias-2.s b/gas/testsuite/gas/aarch64/alias-2.s index d952c97..86b561d 100644 --- a/gas/testsuite/gas/aarch64/alias-2.s +++ b/gas/testsuite/gas/aarch64/alias-2.s @@ -15,6 +15,14 @@ bfc xzr, #\imm, #\width .endm + /* <rev> [Xd|xzr], [Xr|xzr] */ + .macro rev_inst op + \op x0, xzr + \op x0, x1 + \op xzr, x1 + \op xzr, xzr + .endm + .text .irp op, bfm, bfi .irp imm, 1, 16, 31 @@ -29,3 +37,7 @@ bfc_inst \imm, \width .endr .endr + + .irp op, rev, rev16, rev64 + rev_inst \op + .endr |