From patchwork Thu Aug 19 23:34:28 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: Combine four insns Date: Thu, 19 Aug 2010 13:34:28 -0000 From: Bernd Schmidt X-Patchwork-Id: 62222 Message-Id: <4C6DBF84.2020702@codesourcery.com> To: "H.J. Lu" Cc: Eric Botcazou , gcc-patches@gcc.gnu.org, Mark Mitchell , Richard Guenther , David Daney , Andi Kleen , Steven Bosscher On 08/20/2010 12:53 AM, H.J. Lu wrote: > This may have caused: > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45350 Hmm. FIND_REG_INC_NOTE expands to 0 on i686, so it didn't show up there. Anyway, both the set and the use are conditional on i1 != NULL, so I've committed the following after a bootstrap. Bernd Index: ChangeLog =================================================================== --- ChangeLog (revision 163388) +++ ChangeLog (working copy) @@ -1,3 +1,9 @@ +2010-08-19 Bernd Schmidt + + PR bootstrap/45350 + * combine.c (try_combine): Initialize i1_is_used and i2_is_used. Fix + a comment. + 2010-08-19 Nathan Froyd * target.def (function_arg, function_incoming_arg): Remove const Index: combine.c =================================================================== --- combine.c (revision 163383) +++ combine.c (working copy) @@ -2511,7 +2511,7 @@ try_combine (rtx i3, rtx i2, rtx i1, rtx /* Total number of SETs to put into I3. */ int total_sets; /* Nonzero if I2's or I1's body now appears in I3. */ - int i2_is_used, i1_is_used; + int i2_is_used = 0, i1_is_used = 0; /* INSN_CODEs for new I3, new I2, and user of condition code. */ int insn_code_number, i2_code_number = 0, other_code_number = 0; /* Contains I3 if the destination of I3 is used in its source, which means @@ -2546,8 +2546,8 @@ try_combine (rtx i3, rtx i2, rtx i1, rtx int i; /* Only try four-insn combinations when there's high likelihood of - success. Look for simple insns, such as loads of constants, unary - operations, or binary operations involving a constant. */ + success. Look for simple insns, such as loads of constants or + binary operations involving a constant. */ if (i0) { int i;