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

--- Comment #6 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>:

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

commit r11-8149-gf6ba5d039f988babdd99b5cdfb4557c380e57d69
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Tue Apr 13 12:43:39 2021 +0200

    aarch64: Restore bfxil optimization [PR100028]

    Similarly to PR87763 for bfi, the GCC 9 combiner changes to not combine
    moves from hard registers regressed the following testcase where we no
    longer recognize bfxil and emit 3 instructions instead.

    The following patch adds define_insn patterns that match what the combiner
    is trying to match in these cases.  I haven't been able to see patterns
    with the other order of the IOR operands, seems the IL is canonicalized
this
    way no matter what is written in the source.

    2021-04-13  Jakub Jelinek  <ja...@redhat.com>

            PR target/100028
            * config/aarch64/aarch64.md (*aarch64_bfxil<mode>_extr,
            *aarch64_bfxilsi_extrdi): New define_insn patterns.

            * gcc.target/aarch64/pr100028.c: New test.

Reply via email to