On 08/06/14 11:20, David Malcolm wrote:
Doing so means strengthening the types of the make_raw callbacks within emit-rtl.c from rtx to rtx_insn * as used by the emit_pattern_* internal functions. There's more that could be done in terms of the params to these functions, but we'll save that for later.gcc/ * rtl.h (make_insn_raw): Strengthen return type from rtx to rtx_insn *. * emit-rtl.c (make_insn_raw): Strengthen return type and local "insn" from rtx to rtx_insn *. (make_debug_insn_raw): Strengthen return type from rtx to rtx_insn *; strengthen local "insn" from rtx to rtx_debug_insn *. (make_jump_insn_raw): Strengthen return type from rtx to rtx_insn *; strengthen local "insn" from rtx to rtx_jump_insn *. (make_call_insn_raw): Strengthen return type from rtx to rtx_insn *; strengthen local "insn" from rtx to rtx_call_insn *. (emit_pattern_before_noloc): Strengthen return type of "make_raw" callback from rtx to rtx_insn *; likewise for local "insn" and "next", adding a checked cast to rtx_insn in the relevant cases of the switch statement. (emit_pattern_after_noloc): Strengthen return type of "make_raw" callback from rtx to rtx_insn *. (emit_pattern_after_setloc): Likewise. (emit_pattern_after): Likewise. (emit_pattern_before_setloc): Likewise. (emit_pattern_before): Likewise.
OK. Jeff
