aboutsummaryrefslogtreecommitdiff
path: root/gcc/optabs.c
diff options
context:
space:
mode:
authorTorbjorn Granlund <tege@gnu.org>1996-10-21 22:20:06 +0000
committerTorbjorn Granlund <tege@gnu.org>1996-10-21 22:20:06 +0000
commit2335740444a591de70ced63044f5f401c7a30541 (patch)
treeb0f126b6de11b4d4b3ba3de721bc8e55ee59c4b2 /gcc/optabs.c
parent04a8ee2ff6a807f01302ae8539802d4f0df7f7ea (diff)
downloadgcc-2335740444a591de70ced63044f5f401c7a30541.zip
gcc-2335740444a591de70ced63044f5f401c7a30541.tar.gz
gcc-2335740444a591de70ced63044f5f401c7a30541.tar.bz2
(expand_binop): Use new function emit_store_flag_force.
From-SVN: r12988
Diffstat (limited to 'gcc/optabs.c')
-rw-r--r--gcc/optabs.c21
1 files changed, 10 insertions, 11 deletions
diff --git a/gcc/optabs.c b/gcc/optabs.c
index 8f4a640..b34dad0 100644
--- a/gcc/optabs.c
+++ b/gcc/optabs.c
@@ -921,12 +921,11 @@ expand_binop (mode, binoptab, op0, op1, target, unsignedp, methods)
{
/* Store carry from main add/subtract. */
carry_out = gen_reg_rtx (word_mode);
- carry_out = emit_store_flag (carry_out,
- binoptab == add_optab ? LTU : GTU,
- x, op0_piece,
- word_mode, 1, normalizep);
- if (carry_out == 0)
- break;
+ carry_out = emit_store_flag_force (carry_out,
+ (binoptab == add_optab
+ ? LTU : GTU),
+ x, op0_piece,
+ word_mode, 1, normalizep);
}
if (i > 0)
@@ -945,11 +944,11 @@ expand_binop (mode, binoptab, op0, op1, target, unsignedp, methods)
{
/* THIS CODE HAS NOT BEEN TESTED. */
/* Get out carry from adding/subtracting carry in. */
- carry_tmp = emit_store_flag (carry_tmp,
- binoptab == add_optab
- ? LTU : GTU,
- x, carry_in,
- word_mode, 1, normalizep);
+ carry_tmp = emit_store_flag_force (carry_tmp,
+ binoptab == add_optab
+ ? LTU : GTU,
+ x, carry_in,
+ word_mode, 1, normalizep);
/* Logical-ior the two poss. carry together. */
carry_out = expand_binop (word_mode, ior_optab,