This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH, i386]: Fix PR89827, ICE: in convert_op


Attached patch fixes a corner case in STV pass where the shift operand
register equals shift count register. The specialization for shift
insns marked register as processed, but didn't process shift input
operand, leaving an unprocessed DImode register.

2019-03-26  Uroš Bizjak  <ubizjak@gmail.com>

    PR target/89827
    * config/i386/i386.c (dimode_scalar_chain::convert_reg):
    Also process XEXP (src, 0) of a shift insn.

testsuite/ChangeLog:

2019-03-26  Uroš Bizjak  <ubizjak@gmail.com>

    PR target/89827
    * gcc.target/i386/pr89827.c: New test.

Bootstrapped and regression tested on x86_64-linux-gnu {,-m32}.

Committed to mainline SVN, will be backported to gcc-8 branch.

Uros.

Attachment: p.diff.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]