On Fri, Jan 09, 2015 at 11:35:41AM +0100, Tom de Vries wrote: > 2015-01-09 Tom de Vries <t...@codesourcery.com> > > PR rtl-optimization/64539 > * regcprop.c (copyprop_hardreg_forward_1): Handle clobbers in > CALL_INSN_FUNCTION_USAGE.
To avoid the duplication, wouldn't it be better to add static void kill_clobbered_values (rtx_insn *insn, struct value_data *vd) { note_stores (PATTERN (insn), kill_clobbered_value, vd); if (CALL_P (insn)) { rtx exp; for (exp = CALL_INSN_FUNCTION_USAGE (insn); exp; exp = XEXP (exp, 1)) { rtx x = XEXP (exp, 0); if (GET_CODE (x) == CLOBBER) kill_value (SET_DEST (x), vd); } } } function (with appropriate function comment) and use it in both places? Otherwise LGTM. Jakub