]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
aarch64: Add support for FEAT_SVE_B16B16 feature.
authorSrinath Parvathaneni <srinath.parvathaneni@arm.com>
Fri, 10 Jan 2025 16:47:30 +0000 (16:47 +0000)
committerSrinath Parvathaneni <srinath.parvathaneni@arm.com>
Fri, 10 Jan 2025 16:47:30 +0000 (16:47 +0000)
commitd8c923031eaeb4ea3dc9812189948610468f1caa
treebd16b483f43197f4d680749a63a39ec48e61da8b
parent4180f87a99094d7bada8c9bff3aa116f0c4b6c97
aarch64: Add support for FEAT_SVE_B16B16 feature.

In the current code, SVE2 Bfloat16 instructions are implemented with tick
FEAT_B16B16 and command line flag "+b16b16" and this feature was suspended
due to incomplete support.

In the new spec available here[1], FEAT_B16B16 is replaced with
FEAT_SVE_B16B16 and command line flag "+b16b16" is replace with "sve-b16b16".

Also the test files related to FEAT_SVE_B16B16 are prefixed with sve-b16b16*.
eg: sve-b16b16-sve2-1.s, sve-b16b16-sve2-1.d.

This patch supports the SVE Z-targeting non-widening BFloat16 instructions
with command line flag "+sve-b16b16+sve2".
[1]: https://developer.arm.com/documentation/ddi0602/2024-06/SVE-Instructions?lang=en
16 files changed:
gas/config/tc-aarch64.c
gas/doc/c-aarch64.texi
gas/testsuite/gas/aarch64/bfloat16-1-invalid.d [deleted file]
gas/testsuite/gas/aarch64/bfloat16-2-invalid.d [deleted file]
gas/testsuite/gas/aarch64/bfloat16-bad.d [deleted file]
gas/testsuite/gas/aarch64/bfloat16-bad.l [deleted file]
gas/testsuite/gas/aarch64/sve-b16b16-sve2-bad-1.d [new file with mode: 0644]
gas/testsuite/gas/aarch64/sve-b16b16-sve2-bad-1.l [moved from gas/testsuite/gas/aarch64/bfloat16-1-invalid.l with 100% similarity]
gas/testsuite/gas/aarch64/sve-b16b16-sve2-bad-1.s [moved from gas/testsuite/gas/aarch64/bfloat16-1-invalid.s with 100% similarity]
gas/testsuite/gas/aarch64/sve-b16b16-sve2-bad-2.d [new file with mode: 0644]
gas/testsuite/gas/aarch64/sve-b16b16-sve2-bad-2.l [moved from gas/testsuite/gas/aarch64/bfloat16-2-invalid.l with 94% similarity]
gas/testsuite/gas/aarch64/sve-b16b16-sve2-bad-2.s [moved from gas/testsuite/gas/aarch64/bfloat16-2-invalid.s with 100% similarity]
gas/testsuite/gas/aarch64/sve-b16b16-sve2.d [moved from gas/testsuite/gas/aarch64/bfloat16-1.d with 97% similarity]
gas/testsuite/gas/aarch64/sve-b16b16-sve2.s [moved from gas/testsuite/gas/aarch64/bfloat16-1.s with 100% similarity]
include/opcode/aarch64.h
opcodes/aarch64-tbl.h