[AArch64][PATCH 13/14] Support FP16 Adv.SIMD Shift By Immediate instructions.
authorMatthew Wahab <matthew.wahab@arm.com>
Mon, 14 Dec 2015 17:40:03 +0000 (17:40 +0000)
committerMatthew Wahab <matthew.wahab@arm.com>
Mon, 14 Dec 2015 17:42:16 +0000 (17:42 +0000)
commitb5b0f34c669a91b9d873221ea3d688cf7f495ab5
treef9de996366ed0f1cf1d33b01222bfaf891f9f39b
parentb195470dd29e8a5c8810209fb2d22c30004fe6ab
[AArch64][PATCH 13/14] Support FP16 Adv.SIMD Shift By Immediate instructions.

ARMv8.2 adds 16-bit floating point operations as an optional extension
to the floating point and Adv.SIMD support. This patch extends
instructions in the group Adv.SIMD Shift By Immediate to support FP16,
making this support available when +simd+fp16 is enabled.

The new instructions legal make some uses of the 4h vector type that had
been invalid. This patch adjusts a test that checks for these uses.

The extended instructions are: SCVTF, FCVTZS, UCVTF and FCVTZU.

The general form for these instructions is
   <OP> <Vd>.<T>, <Vs>.<T>, #<imm>
   where T is 4h or 8h.

gas/testsuite/
2015-12-14  Matthew Wahab  <matthew.wahab@arm.com>

* gas/aarch64/advsimd-fp16.d: Update expected output.
* gas/aarch64/advsimd-fp16.s: Add tests for Adv.SIMD across lanes
instructions.
* gas/aarch64/illegal.d: Update expected output.
* gas/aarch64/illegal.s: Replace tests for illegal use of 'h'
specifier.

opcodes/
2015-12-14  Matthew Wahab  <matthew.wahab@arm.com>

* aarch64-asm-2.c: Regenerate.
* aarch64-dis-2.c: Regenerate.
* aarch64-opc-2.c: Regenerate.
* aarch64-tbl.h (QL_VSHIFT_H): New.
(aarch64_opcode_table): Add fp16 versions of scvtf, fcvtzs, ucvtf
and fcvtzu to the Adv.SIMD shift by immediate group.

Change-Id: I3480f63883d54db46562573185da6982f2365ee8
gas/testsuite/ChangeLog
gas/testsuite/gas/aarch64/advsimd-fp16.d
gas/testsuite/gas/aarch64/advsimd-fp16.s
gas/testsuite/gas/aarch64/illegal.l
gas/testsuite/gas/aarch64/illegal.s
opcodes/ChangeLog
opcodes/aarch64-asm-2.c
opcodes/aarch64-dis-2.c
opcodes/aarch64-opc-2.c
opcodes/aarch64-tbl.h