[Bug target/89903] [9 Regression] ICE: in convert_op, at config/i386/i386.c:2102 with -O2 -march=skylake

uros at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Apr 2 17:06:00 GMT 2019


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

--- Comment #2 from uros at gcc dot gnu.org ---
Author: uros
Date: Tue Apr  2 17:05:59 2019
New Revision: 270102

URL: https://gcc.gnu.org/viewcvs?rev=270102&root=gcc&view=rev
Log:
        PR target/89902
        PR target/89903
        * config/i386/i386.c (dimode_scalar_to_vector_candidate_p):
        Return false for variable DImode shifts.
        (dimode_scalar_chain::compute_convert_gain): Do not handle
        register count operand in variable DImode shifts.
        (dimode_scalar_chain::make_vector_copies): Remove support to copy
        count argument of a variable shift instruction to a vector register.
        (dimode_scalar_chain::convert_reg): Remove support to convert
        count argument of a variable shift instruction.

testsuite/ChangeLog:

        PR target/89902
        PR target/89903
        * gcc.target/i386/pr70799-4.c: Remove.
        * gcc.target/i386/pr70799-5.c: Remove.
        * gcc.target/i386/pr89902.c: New test.
        * gcc.target/i386/pr89903.c: Ditto.


Added:
    trunk/gcc/testsuite/gcc.target/i386/pr89902.c
    trunk/gcc/testsuite/gcc.target/i386/pr89903.c
Removed:
    trunk/gcc/testsuite/gcc.target/i386/pr70799-4.c
    trunk/gcc/testsuite/gcc.target/i386/pr70799-5.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/i386/i386.c
    trunk/gcc/testsuite/ChangeLog


More information about the Gcc-bugs mailing list