PR target/84710
* combine.c (try_combine): Use reg_or_subregno instead of handling
just paradoxical SUBREGs and REGs.
* gcc.dg/pr84710.c: New test.
From-SVN: r258301
+2018-03-06 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/84710
+ * combine.c (try_combine): Use reg_or_subregno instead of handling
+ just paradoxical SUBREGs and REGs.
+
2018-03-06 Claudiu Zissulescu <claziss@synopsys.com>
* config/arc/arc.c (arc_finalize_pic): Remove function.
if (GET_CODE (x) == PARALLEL)
x = XVECEXP (newi2pat, 0, 0);
- /* It can only be a SET of a REG or of a paradoxical SUBREG of a REG. */
- x = SET_DEST (x);
- if (paradoxical_subreg_p (x))
- x = SUBREG_REG (x);
-
- unsigned int regno = REGNO (x);
+ /* It can only be a SET of a REG or of a SUBREG of a REG. */
+ unsigned int regno = reg_or_subregno (SET_DEST (x));
bool done = false;
for (rtx_insn *insn = NEXT_INSN (i3);
+2018-03-06 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/84710
+ * gcc.dg/pr84710.c: New test.
+
2018-03-06 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/56667
--- /dev/null
+/* PR target/84710 */
+/* { dg-do compile } */
+/* { dg-options "-O -fno-forward-propagate" } */
+
+char a;
+int b;
+
+void
+foo (void)
+{
+ int d;
+ b = __builtin_mul_overflow ((char) d, 0xfe, &a);
+}