+2017-11-29 Segher Boessenkool <segher@kernel.crashing.org>
+
+ PR rtl-optimization/83156
+ PR rtl-optimization/82621
+ * combine.c (try_combine): Don't split an I2 if one of the dests is
+ set again before I3. Allow unused dests.
+
2017-11-29 Segher Boessenkool <segher@kernel.crashing.org>
* config/rs6000/rs6000.md (*add<mode>3_carry_in_internal2): New.
&& can_split_parallel_of_n_reg_sets (i2, 2)
&& !reg_used_between_p (SET_DEST (XVECEXP (PATTERN (i2), 0, 0)), i2, i3)
&& !reg_used_between_p (SET_DEST (XVECEXP (PATTERN (i2), 0, 1)), i2, i3)
- && !find_reg_note (i2, REG_UNUSED, 0))
+ && !reg_set_between_p (SET_DEST (XVECEXP (PATTERN (i2), 0, 0)), i2, i3)
+ && !reg_set_between_p (SET_DEST (XVECEXP (PATTERN (i2), 0, 1)), i2, i3))
{
/* If there is no I1, there is no I0 either. */
i0 = i1;