On 19/11/13 17:17, Steven Bosscher wrote: > On Tue, Nov 19, 2013 at 5:43 PM, Richard Earnshaw wrote: >> PR 54300 is a problem in regcprop where the compiler sees >> (parallel [(set (x) (y) >> (set (y) (x)]) (REG_UNUSED (y)) >> >> as a single-set insn (since the other operand, y, is not used) and >> replaces a use of x with a use of y. However, it fails to take into >> account that y has been clobbered in the insn itself. > > Ah, wait. Incorrect use of single_set(). > > Try > ------ > } > > - set = single_set (insn); > + set = multiple_sets (insn) ? NULL_RTX : single_set (insn); > extract_insn (insn); > if (! constrain_operands (1)) > fatal_insn_not_found (insn); > preprocess_constraints (); > ------ > > Ciao! > Steven >
That won't handle parallel [ (set (x) (y)) (clobber (y))] R.