From: Jim Wilson Date: Sat, 18 Jun 1994 20:44:41 +0000 (-0700) Subject: (move_movables): Copy CALL_INSN_FUNCTION_USAGE field. X-Git-Tag: misc/cutover-egcs-0~6426 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f97d29ce9ccf582aca6ecbe1780a53b3e760aa8b;p=thirdparty%2Fgcc.git (move_movables): Copy CALL_INSN_FUNCTION_USAGE field. From-SVN: r7517 --- diff --git a/gcc/loop.c b/gcc/loop.c index 6469707c07d8..dc39fdfd3d42 100644 --- a/gcc/loop.c +++ b/gcc/loop.c @@ -1786,7 +1786,14 @@ move_movables (movables, threshold, insn_count, loop_start, end, nregs) fn_address_insn); if (GET_CODE (temp) == CALL_INSN) - i1 = emit_call_insn_before (body, loop_start); + { + i1 = emit_call_insn_before (body, loop_start); + /* Because the USAGE information potentially + contains objects other than hard registers + we need to copy it. */ + CALL_INSN_FUNCTION_USAGE (i1) = + copy_rtx (CALL_INSN_FUNCTION_USAGE (temp)); + } else i1 = emit_insn_before (body, loop_start); if (first == 0) @@ -1822,7 +1829,14 @@ move_movables (movables, threshold, insn_count, loop_start, end, nregs) i1 = emit_insn_before (sequence, loop_start); } else if (GET_CODE (p) == CALL_INSN) - i1 = emit_call_insn_before (PATTERN (p), loop_start); + { + i1 = emit_call_insn_before (PATTERN (p), loop_start); + /* Because the USAGE information potentially + contains objects other than hard registers + we need to copy it. */ + CALL_INSN_FUNCTION_USAGE (i1) = + copy_rtx (CALL_INSN_FUNCTION_USAGE (p)); + } else i1 = emit_insn_before (PATTERN (p), loop_start);