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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hp at gcc dot gnu.org,
                   |                            |pinskia at gcc dot gnu.org

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Andrew Pinski from comment #3)
> Most likely caused by r14-1526-g3991b2f623d22dea19c

Specifically this part of the change:
-                 if (costs_lt_p (&newcst, &oldcst, speed))
+
+                 /* We perform this replacement only if NEXT is either a
+                    naked SET, or else its single_set is the first element
+                    in a PARALLEL.  */
+                 rtx *setloc = GET_CODE (PATTERN (insn)) == PARALLEL
+                   ? &XEXP (PATTERN (insn), 0) : &PATTERN (insn);
+                 if (*setloc == set && costs_lt_p (&newcst, &oldcst, speed))


XEXP on PARALLEL is not correct. XVECEXP (PATTERN (insn), 0, 0) would be
correct based on the comment.

Reply via email to