mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-01-13 14:55:16 +08:00
expmed.c (emit_store_flag): Extract updated comparison code from the return value of compare_from_rtx.
* expmed.c (emit_store_flag): Extract updated comparison code from the return value of compare_from_rtx. * expr.c (do_store_flag): Similarly. From-SVN: r48128
This commit is contained in:
parent
79503fdd33
commit
8f08e8c010
@ -1,3 +1,9 @@
|
||||
Mon Dec 17 14:21:21 2001 Jeffrey A Law (law@redhat.com)
|
||||
|
||||
* expmed.c (emit_store_flag): Extract updated comparison code
|
||||
from the return value of compare_from_rtx.
|
||||
* expr.c (do_store_flag): Similarly.
|
||||
|
||||
2001-12-17 Nick Clifton <nickc@cambridge.redhat.com>
|
||||
|
||||
* caller-save.c (init_caller_save): Use MODE_BASE_REG_CLASS in
|
||||
|
11
gcc/expmed.c
11
gcc/expmed.c
@ -4350,12 +4350,13 @@ emit_store_flag (target, code, op0, op1, mode, unsignedp, normalizep)
|
||||
: normalizep == -1 ? constm1_rtx
|
||||
: const_true_rtx);
|
||||
|
||||
/* If the code of COMPARISON doesn't match CODE, something is
|
||||
wrong; we can no longer be sure that we have the operation.
|
||||
We could handle this case, but it should not happen. */
|
||||
/* The code of COMPARISON may not match CODE if compare_from_rtx
|
||||
decided to swap its operands and reverse the original code.
|
||||
|
||||
if (GET_CODE (comparison) != code)
|
||||
abort ();
|
||||
We know that compare_from_rtx returns either a CONST_INT or
|
||||
a new comparison code, so it is safe to just extract the
|
||||
code from COMPARISON. */
|
||||
code = GET_CODE (comparison);
|
||||
|
||||
/* Get a reference to the target in the proper mode for this insn. */
|
||||
compare_mode = insn_data[(int) icode].operand[0].mode;
|
||||
|
@ -10235,6 +10235,14 @@ do_store_flag (exp, target, mode, only_cheap)
|
||||
|| (result != const0_rtx && invert))
|
||||
? const0_rtx : const1_rtx);
|
||||
|
||||
/* The code of RESULT may not match CODE if compare_from_rtx
|
||||
decided to swap its operands and reverse the original code.
|
||||
|
||||
We know that compare_from_rtx returns either a CONST_INT or
|
||||
a new comparison code, so it is safe to just extract the
|
||||
code from RESULT. */
|
||||
code = GET_CODE (result);
|
||||
|
||||
label = gen_label_rtx ();
|
||||
if (bcc_gen_fctn[(int) code] == 0)
|
||||
abort ();
|
||||
|
Loading…
Reference in New Issue
Block a user