[PATCH v1] PowerPC: Support for Load/Store VSX Vector Paired Byte*32 Indexed (RFC02678)
Surya Kumari Jangala
jskumari@linux.ibm.com
Wed Oct 22 17:19:48 GMT 2025
Hi Abhay,
On 15/09/25 11:27 pm, Abhay Kandpal wrote:
> opcodes/
> * ppc-opc.c (powerpc_opcodes): Add lxvpb32x, stxvpb32x.
>
> gas/
> * testsuite/gas/ppc/future.s: New test.
> * testsuite/gas/ppc/future.d: Likewise.
> ---
> This patch is reg tested
>
> gas/testsuite/gas/ppc/future.d | 2 ++
> gas/testsuite/gas/ppc/future.s | 2 ++
> opcodes/ppc-opc.c | 4 ++++
> 3 files changed, 8 insertions(+)
>
> diff --git a/gas/testsuite/gas/ppc/future.d b/gas/testsuite/gas/ppc/future.d
> index 645efd24e1b..19e96fac345 100644
> --- a/gas/testsuite/gas/ppc/future.d
> +++ b/gas/testsuite/gas/ppc/future.d
> @@ -104,4 +104,6 @@ Disassembly of section \.text:
> .*: (83 c9 e3 11|11 e3 c9 83) vupkint8tobf16 v15,v25,1
> .*: (83 c1 17 12|12 17 c1 83) vupkint4tofp32 v16,v24,7
> .*: (83 b9 2f 12|12 2f b9 83) vupkint8tofp32 v17,v23,3
> +.*: (da 9e 72 7c|7c 72 9e da) lxvpb32x vs34,r18,r19
> +.*: (da af 74 7c|7c 74 af da) stxvpb32x vs34,r20,r21
> #pass
> diff --git a/gas/testsuite/gas/ppc/future.s b/gas/testsuite/gas/ppc/future.s
> index 0f00299aa25..492b963c96c 100644
> --- a/gas/testsuite/gas/ppc/future.s
> +++ b/gas/testsuite/gas/ppc/future.s
> @@ -78,4 +78,6 @@ _start:
> vupkint8tobf16 15, 25, 1
> vupkint4tofp32 16, 24, 7
> vupkint8tofp32 17, 23, 3
> + lxvpb32x 34, 18, 19
> + stxvpb32x 34, 20, 21
>
> diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c
> index 028295abc2f..692c962c9e3 100644
> --- a/opcodes/ppc-opc.c
> +++ b/opcodes/ppc-opc.c
> @@ -8935,6 +8935,8 @@ const struct powerpc_opcode powerpc_opcodes[] = {
>
> {"lxvb16x", X(31,876), XX1_MASK, PPCVSX3, 0, {XT6, RA0, RB}},
>
> +{"lxvpb32x", X(31,877), XX1_MASK, FUTURE, 0, {XTP, RA0, RB}},
It is incorrect to use the XX1_MASK here and for 'stxvpb32x'. This mask has a 0
in the 31st bit whereas we want a 1.
Check if there is an existing mask that you can reuse, or create a new one.
-Surya
> +
> {"tabortdci.", XRC(31,878,1), X_MASK, PPCHTM, 0, {TO, RA, HTM_SI}},
>
> {"rmieg", X(31,882), XRTRA_MASK, POWER9, 0, {RB}},
> @@ -9073,6 +9075,8 @@ const struct powerpc_opcode powerpc_opcodes[] = {
>
> {"stxvb16x", X(31,1004), XX1_MASK, PPCVSX3, 0, {XS6, RA0, RB}},
>
> +{"stxvpb32x", X(31,1005), XX1_MASK, FUTURE, 0, {XSP, RA0, RB}},
> +
> {"trechkpt.", XRC(31,1006,1), XRTRARB_MASK,PPCHTM, 0, {0}},
>
> {"tlbli", X(31,1010), XRTRA_MASK, PPC, TITAN, {RB}},
More information about the Binutils
mailing list