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

--- Comment #3 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-15 branch has been updated by Robin Dapp <[email protected]>:

https://gcc.gnu.org/g:b2d78cceff9747eac780e25f601038dcd7d08ec4

commit r15-10813-gb2d78cceff9747eac780e25f601038dcd7d08ec4
Author: Robin Dapp <[email protected]>
Date:   Wed Feb 4 12:51:36 2026 +0100

    RISC-V: Allow vector modes for xtheadvector. [PR123971]

    In riscv_vector_mode_supported_any_target_p we disallow any vector mode
    when TARGET_XTHEADVECTOR.
    Things go wrong when we check if a permutation for a mode is supported
    by just looking at the optab (e.g. in forwprop).  Then later we try to
    expand that permutation but cannot find a related int vector mode because
    we don't allow any vector mode.

    Strictly speaking, this is fallout from the simplify_vector_constructor
    changes but it's still a target issue as the common code has done the
    proper check and we don't live up to the promise of being able to extend
    a certain mode.

    This patch just allows all modes in
    riscv_vector_mode_supported_any_target_p, even for theadvector.

            PR target/123971

    gcc/ChangeLog:

            * config/riscv/riscv.cc (riscv_vector_mode_supported_any_target_p):
            Remove TARGET_XTHEADVECTOR.

    gcc/testsuite/ChangeLog:

            * gcc.target/riscv/rvv/xtheadvector/pr123971.c: New test.

    Signed-off-by: Robin Dapp <[email protected]>
    (cherry picked from commit ecc37444062b408c9e06f811fb3f382ea94f3245)

Reply via email to