https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112694

--- Comment #6 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Pan Li <pa...@gcc.gnu.org>:

https://gcc.gnu.org/g:9f3f0b829b62f11f350867d2350e2af8639ec890

commit r14-5917-g9f3f0b829b62f11f350867d2350e2af8639ec890
Author: Juzhe-Zhong <juzhe.zh...@rivai.ai>
Date:   Tue Nov 28 16:00:33 2023 +0800

    RISC-V: Disallow poly (1,1) VLA SLP interleave vectorization

    This patch fixes all following ICE in zve64d:

    FAIL: gcc.dg/vect/pr71259.c -flto -ffat-lto-objects (internal compiler
error: in SET_TYPE_VECTOR_SUBPARTS, at tree.h:4248)
    FAIL: gcc.dg/vect/pr71259.c -flto -ffat-lto-objects (test for excess
errors)
    FAIL: gcc.dg/vect/vect-alias-check-14.c (internal compiler error: in
SET_TYPE_VECTOR_SUBPARTS, at tree.h:4248)
    FAIL: gcc.dg/vect/vect-alias-check-14.c (test for excess errors)
    FAIL: gcc.dg/vect/vect-alias-check-14.c -flto -ffat-lto-objects (internal
compiler error: in SET_TYPE_VECTOR_SUBPARTS, at tree.h:4248)
    FAIL: gcc.dg/vect/vect-alias-check-14.c -flto -ffat-lto-objects (test for
excess errors)
    FAIL: gcc.dg/vect/vect-alias-check-9.c (internal compiler error: in
SET_TYPE_VECTOR_SUBPARTS, at tree.h:4248)
    FAIL: gcc.dg/vect/vect-alias-check-9.c (test for excess errors)
    FAIL: gcc.dg/vect/vect-alias-check-9.c -flto -ffat-lto-objects (internal
compiler error: in SET_TYPE_VECTOR_SUBPARTS, at tree.h:4248)
    FAIL: gcc.dg/vect/vect-alias-check-9.c -flto -ffat-lto-objects (test for
excess errors)
    FAIL: gcc.dg/vect/vect-cond-arith-6.c (internal compiler error: in
SET_TYPE_VECTOR_SUBPARTS, at tree.h:4248)
    FAIL: gcc.dg/vect/vect-cond-arith-6.c (test for excess errors)
    FAIL: gcc.dg/vect/vect-cond-arith-6.c -flto -ffat-lto-objects (internal
compiler error: in SET_TYPE_VECTOR_SUBPARTS, at tree.h:4248)
    FAIL: gcc.dg/vect/vect-cond-arith-6.c -flto -ffat-lto-objects (test for
excess errors)
    FAIL: gcc.dg/vect/vect-gather-5.c (internal compiler error: in
SET_TYPE_VECTOR_SUBPARTS, at tree.h:4248)
    FAIL: gcc.dg/vect/vect-gather-5.c (test for excess errors)
    FAIL: gcc.dg/vect/vect-gather-5.c -flto -ffat-lto-objects (internal
compiler error: in SET_TYPE_VECTOR_SUBPARTS, at tree.h:4248)
    FAIL: gcc.dg/vect/vect-gather-5.c -flto -ffat-lto-objects (test for excess
errors)

    poly size (1, 1) vectors can not be allowed to interleave VLA SLP since
interleave VLA SLP suppose VF at least hold 2 elements,
    whereas, poly size (1,1) may possible only have 1 element.

            PR target/112694

    gcc/ChangeLog:

            * config/riscv/riscv-v.cc (expand_vec_perm_const): Disallow poly
size (1, 1) VLA SLP.

    gcc/testsuite/ChangeLog:

            * gcc.target/riscv/rvv/autovec/pr112694-2.c: New test.
            * gcc.target/riscv/rvv/autovec/pr112694-3.c: New test.

Reply via email to