i386.c (ix86_expand_int_movcc): Take care to reverse fp conditions properly.
* i386.c (ix86_expand_int_movcc): Take care to reverse fp conditions properly. From-SVN: r38799
This commit is contained in:
parent
1f0d71c5bb
commit
734dba19cd
|
@ -1,3 +1,8 @@
|
|||
Mon Jan 8 13:46:02 MET 2001 Jan Hubicka <jh@suse.cz>
|
||||
|
||||
* i386.c (ix86_expand_int_movcc): Take care to reverse fp conditions
|
||||
properly.
|
||||
|
||||
Sun Jan 7 18:37:43 2001 Mark P Mitchell <mark@codesourcery.com>
|
||||
|
||||
* ggc-page.c (max_alignment): New structure.
|
||||
|
|
|
@ -5399,8 +5399,20 @@ ix86_expand_int_movcc (operands)
|
|||
HOST_WIDE_INT tmp;
|
||||
tmp = ct, ct = cf, cf = tmp;
|
||||
diff = -diff;
|
||||
compare_code = reverse_condition (compare_code);
|
||||
code = reverse_condition (code);
|
||||
if (FLOAT_MODE_P (GET_MODE (ix86_compare_op0)))
|
||||
{
|
||||
/* We may be reversing unordered compare to normal compare, that
|
||||
is not valid in general (we may convert non-trapping condition
|
||||
to trapping one), however on i386 we currently emit all
|
||||
comparisons unordered. */
|
||||
compare_code = reverse_condition_maybe_unordered (compare_code);
|
||||
code = reverse_condition_maybe_unordered (code);
|
||||
}
|
||||
else
|
||||
{
|
||||
compare_code = reverse_condition (compare_code);
|
||||
code = reverse_condition (code);
|
||||
}
|
||||
}
|
||||
if (diff == 1 || diff == 2 || diff == 4 || diff == 8
|
||||
|| diff == 3 || diff == 5 || diff == 9)
|
||||
|
@ -5489,8 +5501,20 @@ ix86_expand_int_movcc (operands)
|
|||
{
|
||||
ct = cf;
|
||||
cf = 0;
|
||||
compare_code = reverse_condition (compare_code);
|
||||
code = reverse_condition (code);
|
||||
if (FLOAT_MODE_P (GET_MODE (ix86_compare_op0)))
|
||||
{
|
||||
/* We may be reversing unordered compare to normal compare,
|
||||
that is not valid in general (we may convert non-trapping
|
||||
condition to trapping one), however on i386 we currently
|
||||
emit all comparisons unordered. */
|
||||
compare_code = reverse_condition_maybe_unordered (compare_code);
|
||||
code = reverse_condition_maybe_unordered (code);
|
||||
}
|
||||
else
|
||||
{
|
||||
compare_code = reverse_condition (compare_code);
|
||||
code = reverse_condition (code);
|
||||
}
|
||||
}
|
||||
|
||||
out = emit_store_flag (out, code, ix86_compare_op0,
|
||||
|
|
Loading…
Reference in New Issue