[Bug middle-end/78904] zero-extracts are not effective

uros at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Dec 26 19:01:00 GMT 2016


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

--- Comment #8 from uros at gcc dot gnu.org ---
Author: uros
Date: Mon Dec 26 19:00:47 2016
New Revision: 243929

URL: https://gcc.gnu.org/viewcvs?rev=243929&root=gcc&view=rev
Log:
        PR target/78904
        * config/i386/i386.md (addqi_ext_1): Canonicalize insn pattern w.r.t.
        zero_extract RTXes.
        (*addqi_ext_2): Ditto.
        (testqi_ext_ccno_0): Canonicalize expander w.r.t. zero_extract RTXes.
        (testqi_ext_1_ccno): Rename from testqi_ext_ccno_0.
        (*testqi_ext_0): Merge with *testqi_ext_1.
        (*testqi_ext_1): Canonicalize insn pattern w.r.t. zero_extract RTXes.
        Update corresponding splitter.
        (*testqi_ext_2): Canonicalize insn pattern w.r.t. zero_extract RTXes.
        (*andqi_ext_0): Merge with *andqi_ext_1.
        (andqi_ext_1): Canonicalize insn pattern w.r.t. zero_extract RTXes.
        Rename from *andqi_ext_1.  Update corresponding splitter and
        peephole2 patterns.
        (*andqi_ext_1_cc): Rename from *andqi_ext_0_cc.
        (*andqi_ext_2): Canonicalize insn pattern w.r.t. zero_extract RTXes.
        (*<any_or:code>qi_ext_0): Merge with *andqi_ext_1.
        (*<any_or:code>qi_ext_1): Canonicalize insn pattern w.r.t.
        zero_extract RTXes.  Update corresponding splitter.
        (*<any_or:code>qi_ext_2): Canonicalize insn pattern w.r.t.
        zero_extract RTXes.
        (xorqi_cc_ext_1): Canonicalize expander w.r.t. zero_extract RTXes.
        (xorqi_ext_1_cc): Rename from xorqi_cc_ext_1.
        (*xorqi_cc_ext_1): Canonicalize insn pattern w.r.t. zero_extract RTXes.
        Update corresponding splitter.
        (*xorqi_ext_1_cc): Rename from *xorqi_cc_ext_1.
        (isinfxf2): Update calls to renamed expanders.
        (isinf<mode>2): Ditto.
        * config/i386/i386.c (ix86_expand_fp_compare): Ditto.
        (ix86_emit_fp_unordered_jump): Ditto.
        (ix86_emit_i387_round): Ditto.

testsuite/ChangeLog:

        PR target/78904
        * gcc.target/i386/pr78904.c: New test.


Added:
    trunk/gcc/testsuite/gcc.target/i386/pr78904.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/i386/i386.c
    trunk/gcc/config/i386/i386.md
    trunk/gcc/testsuite/ChangeLog


More information about the Gcc-bugs mailing list