i386.md (movsfcc, [...]): The floating point conditional move instructions don't support signed integer...

* i386.md (movsfcc, movdfcc, movxfcc): The floating point
        conditional move instructions don't support signed integer
        comparisons.

From-SVN: r20391
This commit is contained in:
John Wehle 1998-06-09 15:42:21 -06:00 committed by Jeff Law
parent f1be41adfe
commit 1c5d60f501
2 changed files with 63 additions and 0 deletions

View File

@ -1,3 +1,9 @@
Wed Jun 3 23:41:24 EDT 1998 John Wehle (john@feith.com)
* i386.md (movsfcc, movdfcc, movxfcc): The floating point
conditional move instructions don't support signed integer
comparisons.
Tue Jun 9 14:31:19 1998 Nick Clifton <nickc@cygnus.com>
* config/v850/t-v850 (TCFLAGS): Add assembler options to warn of
@ -33,6 +39,12 @@ Tue Jun 9 12:10:27 1998 John Carr <jfc@mit.edu>
Tue Jun 9 12:36:16 1998 Jeffrey A Law (law@cygnus.com)
* mips.c (gpr_mode): New variable.
(override_options): Initialize gpr_mode.
(compute_frame_size): Use "gpr_mode" instead of "word_mode" to
determine size and offset of general purpose registers save slots.
(save_restore_insns, mips_expand_prologue): Similarly.
* Makefile.in (LIB2FUNCS_EH): Define. Just "_eh" for now.
(LIBGCC2_CFLAGS): Remove -fexceptions.
(LIB2FUNCS): Remove "_eh".

View File

@ -7469,6 +7469,23 @@ byte_xor_operation:
if (GET_MODE_CLASS (GET_MODE (i386_compare_op0)) != MODE_INT)
FAIL;
/* The floating point conditional move instructions don't support
signed integer comparisons. */
switch (GET_CODE (operands[1]))
{
case LT:
case LE:
case GE:
case GT:
FAIL;
/* NOTREACHED */
break;
default:
break;
}
operands[1] = gen_rtx_fmt_ee (GET_CODE (operands[1]),
GET_MODE (i386_compare_op0),
i386_compare_op0, i386_compare_op1);
@ -7543,6 +7560,23 @@ byte_xor_operation:
if (GET_MODE_CLASS (GET_MODE (i386_compare_op0)) != MODE_INT)
FAIL;
/* The floating point conditional move instructions don't support
signed integer comparisons. */
switch (GET_CODE (operands[1]))
{
case LT:
case LE:
case GE:
case GT:
FAIL;
/* NOTREACHED */
break;
default:
break;
}
operands[1] = gen_rtx_fmt_ee (GET_CODE (operands[1]),
GET_MODE (i386_compare_op0),
i386_compare_op0, i386_compare_op1);
@ -7617,6 +7651,23 @@ byte_xor_operation:
if (GET_MODE_CLASS (GET_MODE (i386_compare_op0)) != MODE_INT)
FAIL;
/* The floating point conditional move instructions don't support
signed integer comparisons. */
switch (GET_CODE (operands[1]))
{
case LT:
case LE:
case GE:
case GT:
FAIL;
/* NOTREACHED */
break;
default:
break;
}
operands[1] = gen_rtx_fmt_ee (GET_CODE (operands[1]),
GET_MODE (i386_compare_op0),
i386_compare_op0, i386_compare_op1);