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

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

https://gcc.gnu.org/g:41fb3a5669d3a8c85f9103798f4e7502190cf969

commit r15-5567-g41fb3a5669d3a8c85f9103798f4e7502190cf969
Author: Jeff Law <j...@ventanamicro.com>
Date:   Thu Nov 21 08:24:10 2024 -0700

    [RISC-V][PR target/116590] Avoid emitting multiple instructions from fmacc
patterns

    So much like my patch from last week, this removes alternatives that
    create multiple instructions that we really should have never needed.

    In this case it fixes one of two bugs in pr116590.  In particular we
    don't want vmvNr instructions for thead-vector.  Those instructions were
    emitted as part of those two instruction sequences.

    I've tested this in my tester and assuming the pre-commit tester is
    happy, I'll push it to the trunk.

            PR target/116590
    gcc
            * config/riscv/vector.md (pred_mul_<optab>mode_undef): Drop
            unnecessary alternatives.
            (pred_<madd_msub><mode>): Likewise.
            (pred_<macc_msac><mode>): Likewise.
            (pred_<madd_msub><mode>_scalar): Likewise.
            (pred_<macc_msac><mode>_scalar): Likewise.
            (pred_mul_neg_<optab><mode>_undef): Likewise.
            (pred_<nmsub_nmadd><mode>): Likewise.
            (pred_<nmsac_nmacc><mode>): Likewise.
            (pred_<nmsub_nmadd><mode>_scalar): Likewise.
            (pred_<nmsac_nmacc><mode>_scalar): Likewise.

    gcc/testsuite
            * gcc.target/riscv/pr116590.c: New test.

Reply via email to