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

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

https://gcc.gnu.org/g:445d8bb6a89eb2275c4930ec87a98d5123e5abdd

commit r15-5187-g445d8bb6a89eb2275c4930ec87a98d5123e5abdd
Author: xuli <xu...@eswincomputing.com>
Date:   Tue Nov 12 02:31:28 2024 +0000

    RISC-V: Bugfix for
max_sew_overlap_and_next_ratio_valid_for_prev_sew_p[pr117483]

    This patch fixs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117483

    If prev and next satisfy the following rules, we should forbid the case
    (next.get_sew() < prev.get_sew() && (!next.get_ta() || !next.get_ma()))
    in the compatible function
max_sew_overlap_and_next_ratio_valid_for_prev_sew_p.
    Otherwise, the tail elements of next will be polluted.

    DEF_SEW_LMUL_RULE (ge_sew, ratio_and_ge_sew, ratio_and_ge_sew,
     max_sew_overlap_and_next_ratio_valid_for_prev_sew_p,
     always_false, use_max_sew_and_lmul_with_next_ratio)

    Passed the rv64gcv full regression test.

    Signed-off-by: Li Xu <xu...@eswincomputing.com>

            PR target/117483

    gcc/ChangeLog:

            * config/riscv/riscv-vsetvl.cc: Fix bug.

    gcc/testsuite/ChangeLog:

            * gcc.target/riscv/pr117483.c: New test.

Reply via email to