From a93738eb45d6c0fc40f067bb6b23346602a2d7d0 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Mon, 10 Oct 1994 18:46:30 -0400 Subject: [PATCH] (expand_float): Copy TEMP to TARGET when making recursive call and adjusting. From-SVN: r8247 --- gcc/optabs.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gcc/optabs.c b/gcc/optabs.c index 5c9c28b27a1..09f7773171b 100644 --- a/gcc/optabs.c +++ b/gcc/optabs.c @@ -3239,8 +3239,11 @@ expand_float (to, from, unsignedp) expand_float (target, temp, 0); /* Multiply by 2 to undo the shift above. */ - target = expand_binop (fmode, add_optab, target, target, + temp = expand_binop (fmode, add_optab, target, target, target, 0, OPTAB_LIB_WIDEN); + if (temp != target) + emit_move_insn (target, temp); + do_pending_stack_adjust (); emit_label (label); goto done; -- 2.30.2