aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZack Weinberg <zack@codesourcery.com>2002-06-10 22:20:47 +0000
committerZack Weinberg <zack@gcc.gnu.org>2002-06-10 22:20:47 +0000
commitac17cd8f7d5ec49b47ed17ffdf5ad1aeb8024cdb (patch)
tree565bffafe6d510175f439ac35ae2fafa63dbcaa7
parent7b668f9ed038456ca0c0cc048978bd4241f4c311 (diff)
downloadgcc-ac17cd8f7d5ec49b47ed17ffdf5ad1aeb8024cdb.zip
gcc-ac17cd8f7d5ec49b47ed17ffdf5ad1aeb8024cdb.tar.gz
gcc-ac17cd8f7d5ec49b47ed17ffdf5ad1aeb8024cdb.tar.bz2
m32r.h: Don't define SELECT_CC_MODE.
* config/m32r/m32r.h: Don't define SELECT_CC_MODE. * config/m32r/m32r-protos.h: Don't prototype m32r_select_cc_mode. * config/m32r/m32r.c: Don't define m32r_select_cc_mode. (gen_compare): Use CCmode unconditionally. From-SVN: r54473
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/m32r/m32r-protos.h1
-rw-r--r--gcc/config/m32r/m32r.c31
-rw-r--r--gcc/config/m32r/m32r.h5
4 files changed, 16 insertions, 28 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8b6464a3..13dbbfa 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2002-06-10 Zack Weinberg <zack@codesourcery.com>
+
+ * config/m32r/m32r.h: Don't define SELECT_CC_MODE.
+ * config/m32r/m32r-protos.h: Don't prototype m32r_select_cc_mode.
+ * config/m32r/m32r.c: Don't define m32r_select_cc_mode.
+ (gen_compare): Use CCmode unconditionally.
+
2002-06-10 Jakub Jelinek <jakub@redhat.com>
PR optimization/6759
diff --git a/gcc/config/m32r/m32r-protos.h b/gcc/config/m32r/m32r-protos.h
index 4687e75..1a73aa0 100644
--- a/gcc/config/m32r/m32r-protos.h
+++ b/gcc/config/m32r/m32r-protos.h
@@ -44,7 +44,6 @@ extern int function_arg_partial_nregs PARAMS ((CUMULATIVE_ARGS *, Mmode, tree
#ifdef RTX_CODE
extern int easy_di_const PARAMS ((rtx));
extern int easy_df_const PARAMS ((rtx));
-extern int m32r_select_cc_mode PARAMS ((int, rtx, rtx));
extern rtx gen_compare PARAMS ((enum rtx_code, rtx, rtx, int));
extern rtx gen_split_move_double PARAMS ((rtx *));
extern int m32r_address_code PARAMS ((rtx));
diff --git a/gcc/config/m32r/m32r.c b/gcc/config/m32r/m32r.c
index b7ebaf3..2df9aea 100644
--- a/gcc/config/m32r/m32r.c
+++ b/gcc/config/m32r/m32r.c
@@ -1061,18 +1061,6 @@ large_insn_p (op, mode)
/* Comparisons. */
-/* Given a comparison code (EQ, NE, etc.) and the first operand of a COMPARE,
- return the mode to be used for the comparison. */
-
-int
-m32r_select_cc_mode (op, x, y)
- int op ATTRIBUTE_UNUSED;
- rtx x ATTRIBUTE_UNUSED;
- rtx y ATTRIBUTE_UNUSED;
-{
- return (int) CCmode;
-}
-
/* X and Y are two things to compare using CODE. Emit the compare insn and
return the rtx for compare [arg0 of the if_then_else].
If need_compare is true then the comparison insn must be generated, rather
@@ -1084,9 +1072,8 @@ gen_compare (code, x, y, need_compare)
rtx x, y;
int need_compare;
{
- enum machine_mode mode = SELECT_CC_MODE (code, x, y);
enum rtx_code compare_code, branch_code;
- rtx cc_reg = gen_rtx_REG (mode, CARRY_REGNUM);
+ rtx cc_reg = gen_rtx_REG (CCmode, CARRY_REGNUM);
int must_swap = 0;
switch (code)
@@ -1132,7 +1119,7 @@ gen_compare (code, x, y, need_compare)
{
emit_insn (gen_cmp_eqsi_insn (x, y));
- return gen_rtx (code, mode, cc_reg, const0_rtx);
+ return gen_rtx (code, CCmode, cc_reg, const0_rtx);
}
break;
@@ -1172,7 +1159,7 @@ gen_compare (code, x, y, need_compare)
abort ();
}
- return gen_rtx (code, mode, cc_reg, const0_rtx);
+ return gen_rtx (code, CCmode, cc_reg, const0_rtx);
}
break;
@@ -1212,7 +1199,7 @@ gen_compare (code, x, y, need_compare)
abort();
}
- return gen_rtx (code, mode, cc_reg, const0_rtx);
+ return gen_rtx (code, CCmode, cc_reg, const0_rtx);
}
break;
@@ -1225,12 +1212,12 @@ gen_compare (code, x, y, need_compare)
/* reg/reg equal comparison */
if (compare_code == EQ
&& register_operand (y, SImode))
- return gen_rtx (code, mode, x, y);
+ return gen_rtx (code, CCmode, x, y);
/* reg/zero signed comparison */
if ((compare_code == EQ || compare_code == LT)
&& y == const0_rtx)
- return gen_rtx (code, mode, x, y);
+ return gen_rtx (code, CCmode, x, y);
/* reg/smallconst equal comparison */
if (compare_code == EQ
@@ -1239,7 +1226,7 @@ gen_compare (code, x, y, need_compare)
{
rtx tmp = gen_reg_rtx (SImode);
emit_insn (gen_cmp_ne_small_const_insn (tmp, x, y));
- return gen_rtx (code, mode, tmp, const0_rtx);
+ return gen_rtx (code, CCmode, tmp, const0_rtx);
}
/* reg/const equal comparison */
@@ -1247,7 +1234,7 @@ gen_compare (code, x, y, need_compare)
&& CONSTANT_P (y))
{
rtx tmp = force_reg (GET_MODE (x), y);
- return gen_rtx (code, mode, x, tmp);
+ return gen_rtx (code, CCmode, x, tmp);
}
}
@@ -1283,7 +1270,7 @@ gen_compare (code, x, y, need_compare)
abort ();
}
- return gen_rtx (branch_code, VOIDmode, cc_reg, CONST0_RTX (mode));
+ return gen_rtx (branch_code, VOIDmode, cc_reg, CONST0_RTX (CCmode));
}
/* Split a 2 word move (DI or DF) into component parts. */
diff --git a/gcc/config/m32r/m32r.h b/gcc/config/m32r/m32r.h
index d055deb..12f330d 100644
--- a/gcc/config/m32r/m32r.h
+++ b/gcc/config/m32r/m32r.h
@@ -1421,11 +1421,6 @@ do { \
/* Condition code usage. */
-/* Given a comparison code (EQ, NE, etc.) and the first operand of a COMPARE,
- return the mode to be used for the comparison. */
-#define SELECT_CC_MODE(OP, X, Y) \
-((enum machine_mode)m32r_select_cc_mode ((int)OP, X, Y))
-
/* Return non-zero if SELECT_CC_MODE will never return MODE for a
floating point inequality comparison. */
#define REVERSIBLE_CC_MODE(MODE) 1 /*???*/