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

--- Comment #6 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-10 branch has been updated by Peter Bergner
<berg...@gcc.gnu.org>:

https://gcc.gnu.org/g:38b240a9dc7186a51e577dd3ff73c31af3cfb0ab

commit r10-8594-g38b240a9dc7186a51e577dd3ff73c31af3cfb0ab
Author: Peter Bergner <berg...@linux.ibm.com>
Date:   Thu Aug 6 10:03:03 2020 -0500

    rs6000: Don't ICE when spilling an MMA accumulator

    When we spill an accumulator that has a known zero value, LRA will emit
    a new (set (reg:PXI ...) 0) insn, but it does not use the mma_xxsetaccz
    pattern to do it, leading to an unrecognized insn ICE.  The solution here
    is to move the xxsetaccz instruction into the movpxi pattern and have the
    xxsetaccz pattern call the move pattern.

    2020-08-06  Peter Bergner  <berg...@linux.ibm.com>

    gcc/
            PR target/96446
            * config/rs6000/mma.md (*movpxi): Add xxsetaccz generation.
            Disable split for zero constant source operand.
            (mma_xxsetaccz): Change to define_expand.  Call gen_movpxi.

    gcc/testsuite/
            PR target/96446
            * gcc.target/powerpc/pr96446.c: New test.

    (cherry picked from commit 9c376d1c166e7c8b10bba6f1675d2471ffe8447f)

Reply via email to