[PATCH 0/7][Binutils] aarch64: Fix the FEAT_SVE2p1 related issues.

Richard Earnshaw (lists) Richard.Earnshaw@arm.com
Fri Jun 7 13:23:30 GMT 2024


On 07/06/2024 13:52, Srinath Parvathaneni wrote:
> Ping!!

?

https://sourceware.org/pipermail/binutils/2024-May/134239.html suggests this patch set needs updating for the current trunk.

Also, please don't use header markers like "[PATCH v1 7-R/7]", the '-R' confuses the CI and it doesn't pick the patches up properly.  Just number *all* the patches sequentially; we can squash the auto-generated files into their parent commits before pushing them.

R.

> 
> On 5/22/2024 11:04 AM, srinath wrote:
>> Hi,
>>
>> The FEAT_SVE2p1 related issues were reported here [1] and I have posted
>> few patches to fix those issues [2].
>>
>> This patch series is the re-spin of those patches in [2], splitting them and
>> also addresssing other issues like adding extra tests for FEAT_SVE2p1
>> instructions and fix FEAT_B16B16 sve2 instruction constraints.
>>
>> [1] https://sourceware.org/pipermail/binutils/2024-February/132408.html
>> [2] https://sourceware.org/pipermail/binutils/2024-February/132636.html
>>
>> Srinath Parvathaneni (11):
>>    [Binutils] aarch64: Enable mandatory feature bits for v9.4-A.
>>    [Binutils] aarch64: Fix sve2p1 dupq instruction operands.
>>    [Binutils] aarch64: Fix sve2p1 dupq instruction operands (regenerated
>>      files).
>>    [Binutils] aarch64: Fix sve2p1 extq instruction operands.
>>    [Binutils] aarch64: Fix sve2p1 extq instruction operands (regenerated
>>      files).
>>    [Binutils] aarch64: Fix sve2p1 ld[1-4]/st[1-4]q instruction operands.
>>    [Binutils] aarch64: Fix sve2p1 ld[1-4]/st[1-4]q instruction operands
>>      (regenerated files).
>>    [BINUTILS] aarch64: Fix the wrong constraint used for sve2p1
>>      instructions.
>>    [Binutils] aarch64: Add extra tests for sve2p1 min max instructions.
>>    [Binutils] aarch64: Fix FEAT_B16B16 sve2 instruction constraints.
>>    [Binutils] aarch64: Fix FEAT_B16B16 sve2 instruction constraints
>>      (regenerated files).
>>
>>   gas/config/tc-aarch64.c                       |   4 +-
>>   gas/testsuite/gas/aarch64/bfloat16-1.d        |   6 +
>>   gas/testsuite/gas/aarch64/bfloat16-1.s        |   7 +-
>>   .../gas/aarch64/bfloat16-2-invalid.d          |   4 +
>>   .../gas/aarch64/bfloat16-2-invalid.l          | 265 ++++++++++++++++++
>>   .../gas/aarch64/bfloat16-2-invalid.s          | 147 ++++++++++
>>   gas/testsuite/gas/aarch64/bfloat16-bad.l      |   3 +
>>   gas/testsuite/gas/aarch64/bfloat16-invalid.d  |   2 +-
>>   gas/testsuite/gas/aarch64/bfloat16-invalid.l  |  17 +-
>>   gas/testsuite/gas/aarch64/bfloat16-invalid.s  |   9 +-
>>   gas/testsuite/gas/aarch64/sme-5-illegal.l     |   8 +-
>>   gas/testsuite/gas/aarch64/sme-6-illegal.l     |   8 +-
>>   gas/testsuite/gas/aarch64/sve2p1-1-bad.d      |   2 +-
>>   gas/testsuite/gas/aarch64/sve2p1-1-bad.l      | 179 ++++++------
>>   gas/testsuite/gas/aarch64/sve2p1-1-invalid.d  |   4 +
>>   gas/testsuite/gas/aarch64/sve2p1-1-invalid.l  | 101 +++++++
>>   gas/testsuite/gas/aarch64/sve2p1-1-invalid.s  |  26 ++
>>   gas/testsuite/gas/aarch64/sve2p1-1.d          | 181 ++++++------
>>   gas/testsuite/gas/aarch64/sve2p1-1.s          | 180 ++++++------
>>   gas/testsuite/gas/aarch64/sve2p1-2-bad.d      |   4 +
>>   gas/testsuite/gas/aarch64/sve2p1-2-bad.l      |   2 +
>>   gas/testsuite/gas/aarch64/sve2p1-2-invalid.d  |   3 +
>>   gas/testsuite/gas/aarch64/sve2p1-2-invalid.l  |  47 ++++
>>   gas/testsuite/gas/aarch64/sve2p1-2-invalid.s  |  10 +
>>   gas/testsuite/gas/aarch64/sve2p1-2.d          |  34 +++
>>   gas/testsuite/gas/aarch64/sve2p1-2.s          |  28 ++
>>   gas/testsuite/gas/aarch64/sve2p1-3-bad.d      |   3 +
>>   gas/testsuite/gas/aarch64/sve2p1-3-bad.l      | 208 ++++++++++++++
>>   gas/testsuite/gas/aarch64/sve2p1-3-bad.s      |  59 ++++
>>   gas/testsuite/gas/aarch64/sve2p1-3-invalid.d  |   3 +
>>   gas/testsuite/gas/aarch64/sve2p1-3-invalid.l  |  17 ++
>>   gas/testsuite/gas/aarch64/sve2p1-3-invalid.s  |  16 ++
>>   gas/testsuite/gas/aarch64/sve2p1-3.d          |  20 ++
>>   gas/testsuite/gas/aarch64/sve2p1-3.s          |  12 +
>>   gas/testsuite/gas/aarch64/sve2p1-4-invalid.d  |   3 +
>>   gas/testsuite/gas/aarch64/sve2p1-4-invalid.l  | 116 ++++++++
>>   gas/testsuite/gas/aarch64/sve2p1-4-invalid.s  | 119 ++++++++
>>   gas/testsuite/gas/aarch64/sve2p1-4.d          | 144 ++++++++++
>>   gas/testsuite/gas/aarch64/sve2p1-4.s          | 147 ++++++++++
>>   gas/testsuite/gas/aarch64/sve2p1-nosve2.s     |   1 +
>>   include/opcode/aarch64.h                      |   9 +-
>>   opcodes/aarch64-asm-2.c                       |  89 +++---
>>   opcodes/aarch64-asm.c                         |  19 +-
>>   opcodes/aarch64-asm.h                         |   1 -
>>   opcodes/aarch64-dis-2.c                       | 106 ++++---
>>   opcodes/aarch64-dis.c                         |  36 +--
>>   opcodes/aarch64-dis.h                         |   1 -
>>   opcodes/aarch64-opc-2.c                       |   8 +-
>>   opcodes/aarch64-opc.c                         |  16 +-
>>   opcodes/aarch64-tbl.h                         | 127 ++++-----
>>   50 files changed, 2007 insertions(+), 554 deletions(-)
>>   create mode 100644 gas/testsuite/gas/aarch64/bfloat16-2-invalid.d
>>   create mode 100644 gas/testsuite/gas/aarch64/bfloat16-2-invalid.l
>>   create mode 100644 gas/testsuite/gas/aarch64/bfloat16-2-invalid.s
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-1-invalid.d
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-1-invalid.l
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-1-invalid.s
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-2-bad.d
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-2-bad.l
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-2-invalid.d
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-2-invalid.l
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-2-invalid.s
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-2.d
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-2.s
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-3-bad.d
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-3-bad.l
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-3-bad.s
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-3-invalid.d
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-3-invalid.l
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-3-invalid.s
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-3.d
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-3.s
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-4-invalid.d
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-4-invalid.l
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-4-invalid.s
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-4.d
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-4.s
>>   create mode 100644 gas/testsuite/gas/aarch64/sve2p1-nosve2.s
>>



More information about the Binutils mailing list