Commit 3c5cb3e4 by Kazu Hirata Committed by Kazu Hirata

i386-protos.h: Add a prototype for ix86_reverse_condition.

	* config/i386/i386-protos.h: Add a prototype for
	ix86_reverse_condition.
	* config/i386/i386.c (ix86_reverse_condition): New.
	* config/i386/i386.h (REVERSE_CONDITION): Use
	ix86_reverse_condition.
	* config/i386/i386.md: Use ix86_reverse_condition instead of
	REVERSE_CONDITION.

From-SVN: r79556
parent e4b27b12
2004-03-16 Kazu Hirata <kazu@cs.umass.edu>
* config/i386/i386-protos.h: Add a prototype for
ix86_reverse_condition.
* config/i386/i386.c (ix86_reverse_condition): New.
* config/i386/i386.h (REVERSE_CONDITION): Use
ix86_reverse_condition.
* config/i386/i386.md: Use ix86_reverse_condition instead of
REVERSE_CONDITION.
2004-03-16 J. Brobecker <brobecker@gnat.com> 2004-03-16 J. Brobecker <brobecker@gnat.com>
* dwarf2out.c (loc_descriptor_from_tree): Add handling for MIN_EXPR. * dwarf2out.c (loc_descriptor_from_tree): Add handling for MIN_EXPR.
......
...@@ -182,6 +182,7 @@ extern void x86_order_regs_for_local_alloc (void); ...@@ -182,6 +182,7 @@ extern void x86_order_regs_for_local_alloc (void);
extern void x86_function_profiler (FILE *, int); extern void x86_function_profiler (FILE *, int);
extern void x86_emit_floatuns (rtx [2]); extern void x86_emit_floatuns (rtx [2]);
extern enum rtx_code ix86_reverse_condition (enum rtx_code, enum machine_mode);
#ifdef TREE_CODE #ifdef TREE_CODE
extern void init_cumulative_args (CUMULATIVE_ARGS *, tree, rtx, tree); extern void init_cumulative_args (CUMULATIVE_ARGS *, tree, rtx, tree);
......
...@@ -15851,4 +15851,14 @@ ix86_md_asm_clobbers (tree clobbers) ...@@ -15851,4 +15851,14 @@ ix86_md_asm_clobbers (tree clobbers)
return clobbers; return clobbers;
} }
/* Worker function for REVERSE_CONDITION. */
enum rtx_code
ix86_reverse_condition (enum rtx_code code, enum machine_mode mode)
{
return (mode != CCFPmode && mode != CCFPUmode
? reverse_condition (code)
: reverse_condition_maybe_unordered (code));
}
#include "gt-i386.h" #include "gt-i386.h"
...@@ -2660,9 +2660,7 @@ do { \ ...@@ -2660,9 +2660,7 @@ do { \
/* A C expression whose value is reversed condition code of the CODE for /* A C expression whose value is reversed condition code of the CODE for
comparison done in CC_MODE mode. */ comparison done in CC_MODE mode. */
#define REVERSE_CONDITION(CODE, MODE) \ #define REVERSE_CONDITION(CODE, MODE) ix86_reverse_condition ((CODE), (MODE))
((MODE) != CCFPmode && (MODE) != CCFPUmode ? reverse_condition (CODE) \
: reverse_condition_maybe_unordered (CODE))
/* Control the assembler format that we output, to the extent /* Control the assembler format that we output, to the extent
......
...@@ -12813,8 +12813,8 @@ ...@@ -12813,8 +12813,8 @@
rtx new_op1 = copy_rtx (operands[1]); rtx new_op1 = copy_rtx (operands[1]);
operands[1] = new_op1; operands[1] = new_op1;
PUT_MODE (new_op1, QImode); PUT_MODE (new_op1, QImode);
PUT_CODE (new_op1, REVERSE_CONDITION (GET_CODE (new_op1), PUT_CODE (new_op1, ix86_reverse_condition (GET_CODE (new_op1),
GET_MODE (XEXP (new_op1, 0)))); GET_MODE (XEXP (new_op1, 0))));
/* Make sure that (a) the CCmode we have for the flags is strong /* Make sure that (a) the CCmode we have for the flags is strong
enough for the reversed compare or (b) we have a valid FP compare. */ enough for the reversed compare or (b) we have a valid FP compare. */
...@@ -12833,8 +12833,8 @@ ...@@ -12833,8 +12833,8 @@
rtx new_op1 = copy_rtx (operands[1]); rtx new_op1 = copy_rtx (operands[1]);
operands[1] = new_op1; operands[1] = new_op1;
PUT_MODE (new_op1, QImode); PUT_MODE (new_op1, QImode);
PUT_CODE (new_op1, REVERSE_CONDITION (GET_CODE (new_op1), PUT_CODE (new_op1, ix86_reverse_condition (GET_CODE (new_op1),
GET_MODE (XEXP (new_op1, 0)))); GET_MODE (XEXP (new_op1, 0))));
/* Make sure that (a) the CCmode we have for the flags is strong /* Make sure that (a) the CCmode we have for the flags is strong
enough for the reversed compare or (b) we have a valid FP compare. */ enough for the reversed compare or (b) we have a valid FP compare. */
...@@ -13096,8 +13096,8 @@ ...@@ -13096,8 +13096,8 @@
rtx new_op0 = copy_rtx (operands[0]); rtx new_op0 = copy_rtx (operands[0]);
operands[0] = new_op0; operands[0] = new_op0;
PUT_MODE (new_op0, VOIDmode); PUT_MODE (new_op0, VOIDmode);
PUT_CODE (new_op0, REVERSE_CONDITION (GET_CODE (new_op0), PUT_CODE (new_op0, ix86_reverse_condition (GET_CODE (new_op0),
GET_MODE (XEXP (new_op0, 0)))); GET_MODE (XEXP (new_op0, 0))));
/* Make sure that (a) the CCmode we have for the flags is strong /* Make sure that (a) the CCmode we have for the flags is strong
enough for the reversed compare or (b) we have a valid FP compare. */ enough for the reversed compare or (b) we have a valid FP compare. */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment