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

--- Comment #5 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:5d057bfeff70e5b8d00e521844c476f62d51e22c

commit r11-6631-g5d057bfeff70e5b8d00e521844c476f62d51e22c
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Wed Jan 13 10:15:13 2021 +0100

    i386: Add define_insn_and_split patterns for btrl [PR96938]

    In the following testcase we only optimize f2 and f7 to btrl, although we
    should optimize that way all of the functions.  The problem is the type
    demotion/narrowing (which is performed solely during the generic folding
and
    not later), without it we see the AND performed in SImode and match it as
    btrl, but with it while the shifts are still performed in SImode, the
    AND is already done in QImode or HImode low part of the shift.

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

            PR target/96938
            * config/i386/i386.md (*btr<mode>_1, *btr<mode>_2): New
            define_insn_and_split patterns.
            (splitter after *btr<mode>_2): New splitter.

            * gcc.target/i386/pr96938.c: New test.

Reply via email to