PR target/89827
* config/i386/i386.c (dimode_scalar_chain::convert_reg):
Also process XEXP (src, 0) of a shift insn.
testsuite/ChangeLog:
PR target/89827
* gcc.target/i386/pr89827.c: New test.
From-SVN: r269953
+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.
+
2019-03-26 Richard Biener <rguenther@suse.de>
* tree-inline.c (remap_gimple_stmt): Cache gimple_block.
emit_insn_before (seq, insn);
+ XEXP (src, 0) = replace_with_subreg (XEXP (src, 0), reg, reg);
XEXP (src, 1) = gen_rtx_SUBREG (DImode, tmp2, 0);
}
else if (!MEM_P (dst) || !REG_P (src))
+2019-03-26 Uroš Bizjak <ubizjak@gmail.com>
+
+ PR target/89827
+ * gcc.target/i386/pr89827.c: New test.
+
2019-03-26 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* g++.dg/abi/lambda-static-1.C: Handle Solaris as comdat group
--- /dev/null
+/* PR target/89827 */
+/* { dg-do compile { target ia32 } } */
+/* { dg-options "-O2 -msse2 -mstv -mno-stackrealign" } */
+
+unsigned long long a;
+
+void
+foo (void)
+{
+ a >>= (unsigned short) a;
+}