diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 107ec4b0fbcee275d21fdd847f02c29dec6464af..5f1b84ab1cdfbbcb8c58a31e88e96f97a1f9432e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2002-02-05 Richard Henderson <rth@redhat.com> + PR fortran/3393 + * loop.c (loop_iv_add_mult_emit_before): Copy multiplier as well. + (loop_iv_add_mult_sink, loop_iv_add_mult_hoist): Likewise. + PR fortran/3392 * config/mips/mips.c (function_arg): Handle TImode. (function_arg_advance): Likewise. diff --git a/gcc/loop.c b/gcc/loop.c index a65595f2a447ee30f7453287d1edd9fb32f1d292..0067e7490fd4f7677251123c2600b9907c6daabf 100644 --- a/gcc/loop.c +++ b/gcc/loop.c @@ -7654,7 +7654,7 @@ loop_iv_add_mult_emit_before (loop, b, m, a, reg, before_bb, before_insn) } /* Use copy_rtx to prevent unexpected sharing of these rtx. */ - seq = gen_add_mult (copy_rtx (b), m, copy_rtx (a), reg); + seq = gen_add_mult (copy_rtx (b), copy_rtx (m), copy_rtx (a), reg); /* Increase the lifetime of any invariants moved further in code. */ update_reg_last_use (a, before_insn); @@ -7682,7 +7682,7 @@ loop_iv_add_mult_sink (loop, b, m, a, reg) rtx seq; /* Use copy_rtx to prevent unexpected sharing of these rtx. */ - seq = gen_add_mult (copy_rtx (b), m, copy_rtx (a), reg); + seq = gen_add_mult (copy_rtx (b), copy_rtx (m), copy_rtx (a), reg); /* Increase the lifetime of any invariants moved further in code. ???? Is this really necessary? */ @@ -7711,7 +7711,7 @@ loop_iv_add_mult_hoist (loop, b, m, a, reg) rtx seq; /* Use copy_rtx to prevent unexpected sharing of these rtx. */ - seq = gen_add_mult (copy_rtx (b), m, copy_rtx (a), reg); + seq = gen_add_mult (copy_rtx (b), copy_rtx (m), copy_rtx (a), reg); loop_insn_hoist (loop, seq);