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

--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-8 branch has been updated by Richard Sandiford
<rsand...@gcc.gnu.org>:

https://gcc.gnu.org/g:18dd25a17d30bc9038b5693fdd664b3b1f340cf3

commit r8-10917-g18dd25a17d30bc9038b5693fdd664b3b1f340cf3
Author: Richard Sandiford <richard.sandif...@arm.com>
Date:   Mon Apr 26 09:36:47 2021 +0100

    early-remat: Handle sets of multiple candidate regs [PR94605]

    early-remat.c:process_block wasn't handling insns that set multiple
    candidate registers, which led to an assertion failure at the end
    of the main loop.

    Instructions that set two pseudos aren't rematerialisation candidates in
    themselves, but we still need to track them if another instruction that
    sets the same register is a rematerialisation candidate.

    gcc/
            PR rtl-optimization/94605
            * early-remat.c (early_remat::process_block): Handle insns that
            set multiple candidate registers.

    gcc/testsuite/
            PR rtl-optimization/94605
            * gcc.target/aarch64/sve/pr94605.c: New test.

    (cherry picked from commit 3c3f12e2a7625c9a2f5d74a47dbacb2fd1ae5643)
  • [Bug rtl-optimization/94605] [8... cvs-commit at gcc dot gnu.org via Gcc-bugs

Reply via email to