diff options
author | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 1994-10-10 22:46:30 +0000 |
---|---|---|
committer | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 1994-10-10 22:46:30 +0000 |
commit | 98a10a19536991a18713462708eb343ba42ba21e (patch) | |
tree | e565440e445a2b624e7df76c5d77b13c01cb46fd /gcc/optabs.c | |
parent | 6b2540089e8c3ea5912f6d55cba903b0c63688b6 (diff) | |
download | gcc-98a10a19536991a18713462708eb343ba42ba21e.tar.gz |
(expand_float): Copy TEMP to TARGET when making recursive call and
adjusting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@8247 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/optabs.c')
-rw-r--r-- | gcc/optabs.c | 5 |
1 files changed, 4 insertions, 1 deletions
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; |