aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJ"orn Rennecke <joern.rennecke@st.com>2009-04-25 11:43:36 +0000
committerJ"orn Rennecke <joern.rennecke@st.com>2009-04-25 11:43:36 +0000
commitc606bdc39a4a41f0e3c02074703dd2a84b4b97f3 (patch)
treed9d786df70f78abe37c0445f667e6581792f272d
parentf9d18cdd5eb5a0a1aeb8c7a2f2dde4643caa05d3 (diff)
* config/sh/sh.md (cbranchsi4): Use UNKNOWN as not-defined rtx code.
(cbranchdi4): Likewise. * config/sh/sh.c (prepare_cbranch_operands): Likewise. (expand_cbranchdi4): Likewise. git-svn-id: https://gcc.gnu.org/svn/gcc/branches/multi-target-4_4-branch@146767 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/sh/sh.c22
-rw-r--r--gcc/config/sh/sh.md8
3 files changed, 22 insertions, 15 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 4ed2e3fe64f..55b430cc11d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2009-04-25 J"orn Rennecke <joern.rennecke@arc.com>
+
+ * config/sh/sh.md (cbranchsi4): Use UNKNOWN as not-defined rtx code.
+ (cbranchdi4): Likewise.
+ * config/sh/sh.c (prepare_cbranch_operands): Likewise.
+ (expand_cbranchdi4): Likewise.
+
2009-04-24 J"orn Rennecke <joern.rennecke@arc.com>
config/sh/t-sh: (gt-sh.h): Remove redundant rule.
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index c8f4c85ee75..e231766a457 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -1375,7 +1375,7 @@ prepare_cbranch_operands (rtx *operands, enum machine_mode mode,
rtx op1;
rtx scratch = NULL_RTX;
- if (comparison == CODE_FOR_nothing)
+ if (comparison == UNKNOWN)
comparison = GET_CODE (operands[0]);
else
scratch = operands[4];
@@ -1515,7 +1515,7 @@ expand_cbranchdi4 (rtx *operands, enum rtx_code comparison)
op2h = gen_highpart_mode (SImode, DImode, operands[2]);
op1l = gen_lowpart (SImode, operands[1]);
op2l = gen_lowpart (SImode, operands[2]);
- msw_taken = msw_skip = lsw_taken = CODE_FOR_nothing;
+ msw_taken = msw_skip = lsw_taken = UNKNOWN;
prob = split_branch_probability;
rev_prob = REG_BR_PROB_BASE - prob;
switch (comparison)
@@ -1606,9 +1606,9 @@ expand_cbranchdi4 (rtx *operands, enum rtx_code comparison)
break;
default: return false;
}
- num_branches = ((msw_taken != CODE_FOR_nothing)
- + (msw_skip != CODE_FOR_nothing)
- + (lsw_taken != CODE_FOR_nothing));
+ num_branches = ((msw_taken != UNKNOWN)
+ + (msw_skip != UNKNOWN)
+ + (lsw_taken != UNKNOWN));
if (comparison != EQ && comparison != NE && num_branches > 1)
{
if (!CONSTANT_P (operands[2])
@@ -1634,20 +1634,20 @@ expand_cbranchdi4 (rtx *operands, enum rtx_code comparison)
operands[4] = NULL_RTX;
if (reload_completed
&& ! arith_reg_or_0_operand (op2h, SImode) && true_regnum (op1h)
- && (msw_taken != CODE_FOR_nothing || msw_skip != CODE_FOR_nothing))
+ && (msw_taken != UNKNOWN || msw_skip != UNKNOWN))
{
emit_move_insn (scratch, operands[2]);
operands[2] = scratch;
}
- if (msw_taken != CODE_FOR_nothing)
+ if (msw_taken != UNKNOWN)
expand_cbranchsi4 (operands, msw_taken, msw_taken_prob);
- if (msw_skip != CODE_FOR_nothing)
+ if (msw_skip != UNKNOWN)
{
rtx taken_label = operands[3];
/* Operands were possibly modified, but msw_skip doesn't expect this.
Always use the original ones. */
- if (msw_taken != CODE_FOR_nothing)
+ if (msw_taken != UNKNOWN)
{
operands[1] = op1h;
operands[2] = op2h;
@@ -1659,14 +1659,14 @@ expand_cbranchdi4 (rtx *operands, enum rtx_code comparison)
}
operands[1] = op1l;
operands[2] = op2l;
- if (lsw_taken != CODE_FOR_nothing)
+ if (lsw_taken != UNKNOWN)
{
if (reload_completed
&& ! arith_reg_or_0_operand (op2l, SImode) && true_regnum (op1l))
operands[4] = scratch;
expand_cbranchsi4 (operands, lsw_taken, lsw_taken_prob);
}
- if (msw_skip != CODE_FOR_nothing)
+ if (msw_skip != UNKNOWN)
emit_label (skip_label);
return true;
}
diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md
index f494493fd63..b6221ff35eb 100644
--- a/gcc/config/sh/sh.md
+++ b/gcc/config/sh/sh.md
@@ -647,7 +647,7 @@
(pc)))
(clobber (reg:SI T_REG))]
"TARGET_CBRANCHDI4"
- "expand_cbranchsi4 (operands, CODE_FOR_nothing, -1); DONE;")
+ "expand_cbranchsi4 (operands, UNKNOWN, -1); DONE;")
;; -------------------------------------------------------------------------
;; SImode unsigned integer comparisons
@@ -720,13 +720,13 @@
if (TARGET_EXPAND_CBRANCHDI4)
{
- if (expand_cbranchdi4 (operands, CODE_FOR_nothing))
+ if (expand_cbranchdi4 (operands, UNKNOWN))
DONE;
}
- comparison = prepare_cbranch_operands (operands, DImode, CODE_FOR_nothing);
+ comparison = prepare_cbranch_operands (operands, DImode, UNKNOWN);
if (comparison != GET_CODE (operands[0]))
operands[0]
- = gen_rtx_fmt_ee (VOIDmode, comparison, operands[1], operands[2]);
+ = gen_rtx_fmt_ee (comparison, VOIDmode, operands[1], operands[2]);
operands[4] = gen_rtx_SCRATCH (SImode);
}")