LGTM as well :)

Li, Pan2 <[email protected]> 於 2026年6月15日週一 下午6:54寫道:
>
> Ok, but you may need the final confirm from the other forks.
>
> Thanks.
>
> Pan
>
> -----Original Message-----
> From: Zhongyao Chen <[email protected]>
> Sent: Monday, June 15, 2026 6:35 PM
> To: [email protected]
> Cc: [email protected]; Li, Pan2 <[email protected]>; 
> [email protected]
> Subject: [PATCH] RISC-V: Adjust testcase asm check for vx-[5|6]-i[8|16].c
>
> After commit 9f8409f2e2c, SLP discovery can retry swapped operands for
> commutative parents before falling back to an external scalar.
> These tests can be vectorized again, so update asm check.
>
> gcc/testsuite/ChangeLog:
>
>         * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Expect vadd.vx,
>         vmul.vx, vsadd.vx and vssub.vx.
>         * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Likewise.
>         * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Likewise.
>         * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Likewise.
>
> Signed-off-by: Zhongyao Chen <[email protected]>
> ---
>  .../gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c         | 8 ++++----
>  .../gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c          | 8 ++++----
>  .../gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c         | 8 ++++----
>  .../gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c          | 8 ++++----
>  4 files changed, 16 insertions(+), 16 deletions(-)
>
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c 
> b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c
> index a1de51ba172..ddf7827ffc9 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c
> @@ -23,19 +23,19 @@ DEF_VX_BINARY_CASE_3_WRAP(T, SAT_S_SUB_FUNC_WRAP(T), 
> sat_sub, VX_BINARY_FUNC_BOD
>  DEF_VX_BINARY_CASE_3_WRAP(T, AVG_FLOOR_FUNC_WRAP(T), avg_floor, 
> VX_BINARY_FUNC_BODY_X8)
>  DEF_VX_BINARY_CASE_3_WRAP(T, AVG_CEIL_FUNC_WRAP(T), avg_ceil, 
> VX_BINARY_FUNC_BODY_X8)
>
> -/* { dg-final { scan-assembler-not {vadd.vx} } } */
> +/* { dg-final { scan-assembler {vadd.vx} } } */
>  /* { dg-final { scan-assembler {vsub.vx} } } */
>  /* { dg-final { scan-assembler {vrsub.vx} } } */
>  /* { dg-final { scan-assembler {vand.vx} } } */
>  /* { dg-final { scan-assembler {vor.vx} } } */
>  /* { dg-final { scan-assembler {vxor.vx} } } */
> -/* { dg-final { scan-assembler-not {vmul.vx} } } */
> +/* { dg-final { scan-assembler {vmul.vx} } } */
>  /* { dg-final { scan-assembler {vdiv.vx} } } */
>  /* { dg-final { scan-assembler {vrem.vx} } } */
>  /* { dg-final { scan-assembler {vmax.vx} } } */
>  /* { dg-final { scan-assembler {vmin.vx} } } */
> -/* { dg-final { scan-assembler-not {vsadd.vx} } } */
> -/* { dg-final { scan-assembler-not {vssub.vx} } } */
> +/* { dg-final { scan-assembler {vsadd.vx} } } */
> +/* { dg-final { scan-assembler {vssub.vx} } } */
>  /* { dg-final { scan-assembler {vaadd.vx} { target { any-opts {
>       "-mrvv-vector-bits=zvl -mrvv-max-lmul=m1"
>       "-mrvv-vector-bits=zvl -mrvv-max-lmul=m2"
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c 
> b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c
> index 86f9a29b5f9..e5a38fac842 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c
> @@ -23,19 +23,19 @@ DEF_VX_BINARY_CASE_3_WRAP(T, SAT_S_SUB_FUNC_WRAP(T), 
> sat_sub, VX_BINARY_FUNC_BOD
>  DEF_VX_BINARY_CASE_3_WRAP(T, AVG_FLOOR_FUNC_WRAP(T), avg_floor, 
> VX_BINARY_FUNC_BODY_X8)
>  DEF_VX_BINARY_CASE_3_WRAP(T, AVG_CEIL_FUNC_WRAP(T), avg_ceil, 
> VX_BINARY_FUNC_BODY_X8)
>
> -/* { dg-final { scan-assembler-not {vadd.vx} } } */
> +/* { dg-final { scan-assembler {vadd.vx} } } */
>  /* { dg-final { scan-assembler {vsub.vx} } } */
>  /* { dg-final { scan-assembler {vrsub.vx} } } */
>  /* { dg-final { scan-assembler {vand.vx} } } */
>  /* { dg-final { scan-assembler {vor.vx} } } */
>  /* { dg-final { scan-assembler {vxor.vx} } } */
> -/* { dg-final { scan-assembler-not {vmul.vx} } } */
> +/* { dg-final { scan-assembler {vmul.vx} } } */
>  /* { dg-final { scan-assembler {vdiv.vx} } } */
>  /* { dg-final { scan-assembler {vrem.vx} } } */
>  /* { dg-final { scan-assembler {vmax.vx} } } */
>  /* { dg-final { scan-assembler {vmin.vx} } } */
> -/* { dg-final { scan-assembler-not {vsadd.vx} } } */
> -/* { dg-final { scan-assembler-not {vssub.vx} } } */
> +/* { dg-final { scan-assembler {vsadd.vx} } } */
> +/* { dg-final { scan-assembler {vssub.vx} } } */
>  /* { dg-final { scan-assembler {vaadd.vx} { target { no-opts {
>       "-mrvv-vector-bits=zvl -mrvv-max-lmul=m1"
>       "-mrvv-vector-bits=zvl -mrvv-max-lmul=m2"
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c 
> b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c
> index 58730d0a0d4..8334e6fc44a 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c
> @@ -23,19 +23,19 @@ DEF_VX_BINARY_CASE_3_WRAP(T, SAT_S_SUB_FUNC_WRAP(T), 
> sat_sub, VX_BINARY_FUNC_BOD
>  DEF_VX_BINARY_CASE_3_WRAP(T, AVG_FLOOR_FUNC_WRAP(T), avg_floor, 
> VX_BINARY_FUNC_BODY_X8)
>  DEF_VX_BINARY_CASE_3_WRAP(T, AVG_CEIL_FUNC_WRAP(T), avg_ceil, 
> VX_BINARY_FUNC_BODY_X8)
>
> -/* { dg-final { scan-assembler-not {vadd.vx} } } */
> +/* { dg-final { scan-assembler {vadd.vx} } } */
>  /* { dg-final { scan-assembler {vsub.vx} } } */
>  /* { dg-final { scan-assembler {vrsub.vx} } } */
>  /* { dg-final { scan-assembler {vand.vx} } } */
>  /* { dg-final { scan-assembler {vor.vx} } } */
>  /* { dg-final { scan-assembler {vxor.vx} } } */
> -/* { dg-final { scan-assembler-not {vmul.vx} } } */
> +/* { dg-final { scan-assembler {vmul.vx} } } */
>  /* { dg-final { scan-assembler {vdiv.vx} } } */
>  /* { dg-final { scan-assembler {vrem.vx} } } */
>  /* { dg-final { scan-assembler {vmax.vx} } } */
>  /* { dg-final { scan-assembler {vmin.vx} } } */
> -/* { dg-final { scan-assembler-not {vsadd.vx} } } */
> -/* { dg-final { scan-assembler-not {vssub.vx} } } */
> +/* { dg-final { scan-assembler {vsadd.vx} } } */
> +/* { dg-final { scan-assembler {vssub.vx} } } */
>  /* { dg-final { scan-assembler {vaadd.vx} { target { any-opts {
>       "-mrvv-vector-bits=zvl -mrvv-max-lmul=m1"
>       "-mrvv-vector-bits=zvl -mrvv-max-lmul=m2"
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c 
> b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c
> index f1eece7266f..f1d7663b961 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c
> @@ -23,19 +23,19 @@ DEF_VX_BINARY_CASE_3_WRAP(T, SAT_S_SUB_FUNC_WRAP(T), 
> sat_sub, VX_BINARY_FUNC_BOD
>  DEF_VX_BINARY_CASE_3_WRAP(T, AVG_FLOOR_FUNC_WRAP(T), avg_floor, 
> VX_BINARY_FUNC_BODY_X8)
>  DEF_VX_BINARY_CASE_3_WRAP(T, AVG_CEIL_FUNC_WRAP(T), avg_ceil, 
> VX_BINARY_FUNC_BODY_X8)
>
> -/* { dg-final { scan-assembler-not {vadd.vx} } } */
> +/* { dg-final { scan-assembler {vadd.vx} } } */
>  /* { dg-final { scan-assembler {vsub.vx} } } */
>  /* { dg-final { scan-assembler {vrsub.vx} } } */
>  /* { dg-final { scan-assembler {vand.vx} } } */
>  /* { dg-final { scan-assembler {vor.vx} } } */
>  /* { dg-final { scan-assembler {vxor.vx} } } */
> -/* { dg-final { scan-assembler-not {vmul.vx} } } */
> +/* { dg-final { scan-assembler {vmul.vx} } } */
>  /* { dg-final { scan-assembler {vdiv.vx} } } */
>  /* { dg-final { scan-assembler {vrem.vx} } } */
>  /* { dg-final { scan-assembler {vmax.vx} } } */
>  /* { dg-final { scan-assembler {vmin.vx} } } */
> -/* { dg-final { scan-assembler-not {vsadd.vx} } } */
> -/* { dg-final { scan-assembler-not {vssub.vx} } } */
> +/* { dg-final { scan-assembler {vsadd.vx} } } */
> +/* { dg-final { scan-assembler {vssub.vx} } } */
>  /* { dg-final { scan-assembler {vaadd.vx} { target { any-opts {
>       "-mrvv-vector-bits=zvl -mrvv-max-lmul=m1"
>       "-mrvv-vector-bits=zvl -mrvv-max-lmul=m2"
> --
> 2.43.0
>
>

Reply via email to