aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid S. Miller <davem@pierdol.cobaltmicro.com>1998-06-23 01:16:31 +0000
committerDavid S. Miller <davem@gcc.gnu.org>1998-06-22 18:16:31 -0700
commit5b8e7fa3f89041ca0e46f4cd71851c69df71a2e4 (patch)
tree6a5a095c5bdb723e48334dbb9ba3c8eafae1a088
parent83b2940ecbbe1580f5fc4e19a5953a01399fe430 (diff)
downloadgcc-5b8e7fa3f89041ca0e46f4cd71851c69df71a2e4.zip
gcc-5b8e7fa3f89041ca0e46f4cd71851c69df71a2e4.tar.gz
gcc-5b8e7fa3f89041ca0e46f4cd71851c69df71a2e4.tar.bz2
sparc.md (zero_extendhidi2, [...]): Change remaining generic gen_rtx calls to specific genrtl ones.
* config/sparc/sparc.md (zero_extendhidi2, extendhisi2, extendqihi2, extendqisi2, extendqidi2, extendhidi2, adddi3, subdi3, negdi2, call, call_value, untyped_return, nonlocal_goto, splits and peepholes): Change remaining generic gen_rtx calls to specific genrtl ones. From-SVN: r20667
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/config/sparc/sparc.md134
2 files changed, 75 insertions, 67 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 62564a7..5acbf17 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+Mon Jun 22 23:57:31 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * config/sparc/sparc.md (zero_extendhidi2, extendhisi2,
+ extendqihi2, extendqisi2, extendqidi2, extendhidi2, adddi3,
+ subdi3, negdi2, call, call_value, untyped_return, nonlocal_goto,
+ splits and peepholes): Change remaining generic gen_rtx calls to
+ specific genrtl ones.
+
Mon Jun 22 22:21:46 1998 Richard Henderson <rth@cygnus.com>
* gcc.c (handle_braces): Recognize | between options as an or.
diff --git a/gcc/config/sparc/sparc.md b/gcc/config/sparc/sparc.md
index f401849..0732b8b 100644
--- a/gcc/config/sparc/sparc.md
+++ b/gcc/config/sparc/sparc.md
@@ -3224,8 +3224,8 @@
operand1 = XEXP (operand1, 0);
}
- emit_insn (gen_ashldi3 (temp, gen_rtx (SUBREG, DImode, operand1,
- op1_subword),
+ emit_insn (gen_ashldi3 (temp, gen_rtx_SUBREG (DImode, operand1,
+ op1_subword),
shift_48));
emit_insn (gen_lshrdi3 (operand0, temp, shift_48));
DONE;
@@ -3333,8 +3333,8 @@ return \"srl %1,0,%0\";
operand1 = XEXP (operand1, 0);
}
- emit_insn (gen_ashlsi3 (temp, gen_rtx (SUBREG, SImode, operand1,
- op1_subword),
+ emit_insn (gen_ashlsi3 (temp, gen_rtx_SUBREG (SImode, operand1,
+ op1_subword),
shift_16));
emit_insn (gen_ashrsi3 (operand0, temp, shift_16));
DONE;
@@ -3368,11 +3368,11 @@ return \"srl %1,0,%0\";
op0_subword = SUBREG_WORD (operand0);
operand0 = XEXP (operand0, 0);
}
- emit_insn (gen_ashlsi3 (temp, gen_rtx (SUBREG, SImode, operand1,
- op1_subword),
+ emit_insn (gen_ashlsi3 (temp, gen_rtx_SUBREG (SImode, operand1,
+ op1_subword),
shift_24));
if (GET_MODE (operand0) != SImode)
- operand0 = gen_rtx (SUBREG, SImode, operand0, op0_subword);
+ operand0 = gen_rtx_SUBREG (SImode, operand0, op0_subword);
emit_insn (gen_ashrsi3 (operand0, temp, shift_24));
DONE;
}")
@@ -3400,8 +3400,8 @@ return \"srl %1,0,%0\";
operand1 = XEXP (operand1, 0);
}
- emit_insn (gen_ashlsi3 (temp, gen_rtx (SUBREG, SImode, operand1,
- op1_subword),
+ emit_insn (gen_ashlsi3 (temp, gen_rtx_SUBREG (SImode, operand1,
+ op1_subword),
shift_24));
emit_insn (gen_ashrsi3 (operand0, temp, shift_24));
DONE;
@@ -3430,8 +3430,8 @@ return \"srl %1,0,%0\";
operand1 = XEXP (operand1, 0);
}
- emit_insn (gen_ashldi3 (temp, gen_rtx (SUBREG, DImode, operand1,
- op1_subword),
+ emit_insn (gen_ashldi3 (temp, gen_rtx_SUBREG (DImode, operand1,
+ op1_subword),
shift_56));
emit_insn (gen_ashrdi3 (operand0, temp, shift_56));
DONE;
@@ -3460,8 +3460,8 @@ return \"srl %1,0,%0\";
operand1 = XEXP (operand1, 0);
}
- emit_insn (gen_ashldi3 (temp, gen_rtx (SUBREG, DImode, operand1,
- op1_subword),
+ emit_insn (gen_ashldi3 (temp, gen_rtx_SUBREG (DImode, operand1,
+ op1_subword),
shift_48));
emit_insn (gen_ashrdi3 (operand0, temp, shift_48));
DONE;
@@ -3683,12 +3683,12 @@ return \"srl %1,0,%0\";
{
if (! TARGET_ARCH64)
{
- emit_insn (gen_rtx (PARALLEL, VOIDmode, gen_rtvec (2,
- gen_rtx (SET, VOIDmode, operands[0],
- gen_rtx (PLUS, DImode, operands[1],
- operands[2])),
- gen_rtx (CLOBBER, VOIDmode,
- gen_rtx (REG, SImode, SPARC_ICC_REG)))));
+ emit_insn (gen_rtx_PARALLEL (VOIDmode, gen_rtvec (2,
+ gen_rtx_SET (VOIDmode, operands[0],
+ gen_rtx_PLUS (DImode, operands[1],
+ operands[2])),
+ gen_rtx_CLOBBER (VOIDmode,
+ gen_rtx_raw_REG (SImode, SPARC_ICC_REG)))));
DONE;
}
}")
@@ -3867,12 +3867,12 @@ return \"srl %1,0,%0\";
{
if (! TARGET_ARCH64)
{
- emit_insn (gen_rtx (PARALLEL, VOIDmode, gen_rtvec (2,
- gen_rtx (SET, VOIDmode, operands[0],
- gen_rtx (MINUS, DImode, operands[1],
- operands[2])),
- gen_rtx (CLOBBER, VOIDmode,
- gen_rtx (REG, SImode, SPARC_ICC_REG)))));
+ emit_insn (gen_rtx_PARALLEL (VOIDmode, gen_rtvec (2,
+ gen_rtx_SET (VOIDmode, operands[0],
+ gen_rtx_MINUS (DImode, operands[1],
+ operands[2])),
+ gen_rtx_CLOBBER (VOIDmode,
+ gen_rtx_raw_REG (SImode, SPARC_ICC_REG)))));
DONE;
}
}")
@@ -4944,11 +4944,11 @@ return \"srl %1,0,%0\";
{
if (! TARGET_ARCH64)
{
- emit_insn (gen_rtx (PARALLEL, VOIDmode, gen_rtvec (2,
- gen_rtx (SET, VOIDmode, operand0,
- gen_rtx (NEG, DImode, operand1)),
- gen_rtx (CLOBBER, VOIDmode,
- gen_rtx (REG, SImode, SPARC_ICC_REG)))));
+ emit_insn (gen_rtx_PARALLEL (VOIDmode, gen_rtvec (2,
+ gen_rtx_SET (VOIDmode, operand0,
+ gen_rtx_NEG (DImode, operand1)),
+ gen_rtx_CLOBBER (VOIDmode,
+ gen_rtx_raw_REG (SImode, SPARC_ICC_REG)))));
DONE;
}
}")
@@ -5622,21 +5622,21 @@ if (! TARGET_ARCH64)
if (! TARGET_ARCH64 && INTVAL (operands[3]) != 0)
emit_jump_insn
- (gen_rtx (PARALLEL, VOIDmode,
+ (gen_rtx_PARALLEL (VOIDmode,
gen_rtvec (3,
- gen_rtx (SET, VOIDmode, pc_rtx,
+ gen_rtx_SET (VOIDmode, pc_rtx,
XEXP (operands[0], 0)),
GEN_INT (INTVAL (operands[3]) & 0xfff),
- gen_rtx (CLOBBER, VOIDmode,
- gen_rtx (REG, Pmode, 15)))));
+ gen_rtx_CLOBBER (VOIDmode,
+ gen_rtx_raw_REG (Pmode, 15)))));
else
emit_jump_insn
- (gen_rtx (PARALLEL, VOIDmode,
+ (gen_rtx_PARALLEL (VOIDmode,
gen_rtvec (2,
- gen_rtx (SET, VOIDmode, pc_rtx,
+ gen_rtx_SET (VOIDmode, pc_rtx,
XEXP (operands[0], 0)),
- gen_rtx (CLOBBER, VOIDmode,
- gen_rtx (REG, Pmode, 15)))));
+ gen_rtx_CLOBBER (VOIDmode,
+ gen_rtx_raw_REG (Pmode, 15)))));
goto finish_call;
}
@@ -5656,17 +5656,17 @@ if (! TARGET_ARCH64)
if (! TARGET_ARCH64 && INTVAL (operands[3]) != 0)
emit_call_insn
- (gen_rtx (PARALLEL, VOIDmode,
- gen_rtvec (3, gen_rtx (CALL, VOIDmode, fn_rtx, nregs_rtx),
+ (gen_rtx_PARALLEL (VOIDmode,
+ gen_rtvec (3, gen_rtx_CALL (VOIDmode, fn_rtx, nregs_rtx),
GEN_INT (INTVAL (operands[3]) & 0xfff),
- gen_rtx (CLOBBER, VOIDmode,
- gen_rtx (REG, Pmode, 15)))));
+ gen_rtx_CLOBBER (VOIDmode,
+ gen_rtx_raw_REG (Pmode, 15)))));
else
emit_call_insn
- (gen_rtx (PARALLEL, VOIDmode,
- gen_rtvec (2, gen_rtx (CALL, VOIDmode, fn_rtx, nregs_rtx),
- gen_rtx (CLOBBER, VOIDmode,
- gen_rtx (REG, Pmode, 15)))));
+ (gen_rtx_PARALLEL (VOIDmode,
+ gen_rtvec (2, gen_rtx_CALL (VOIDmode, fn_rtx, nregs_rtx),
+ gen_rtx_CLOBBER (VOIDmode,
+ gen_rtx_raw_REG (Pmode, 15)))));
finish_call:
#if 0
@@ -5797,11 +5797,11 @@ if (! TARGET_ARCH64)
#endif
vec = gen_rtvec (2,
- gen_rtx (SET, VOIDmode, operands[0],
- gen_rtx (CALL, VOIDmode, fn_rtx, nregs_rtx)),
- gen_rtx (CLOBBER, VOIDmode, gen_rtx (REG, Pmode, 15)));
+ gen_rtx_SET (VOIDmode, operands[0],
+ gen_rtx_CALL (VOIDmode, fn_rtx, nregs_rtx)),
+ gen_rtx_CLOBBER (VOIDmode, gen_rtx_raw_REG (Pmode, 15)));
- emit_call_insn (gen_rtx (PARALLEL, VOIDmode, vec));
+ emit_call_insn (gen_rtx_PARALLEL (VOIDmode, vec));
DONE;
}")
@@ -5891,20 +5891,20 @@ if (! TARGET_ARCH64)
""
"
{
- rtx valreg1 = gen_rtx (REG, DImode, 24);
- rtx valreg2 = gen_rtx (REG, TARGET_ARCH64 ? TFmode : DFmode, 32);
+ rtx valreg1 = gen_rtx_raw_REG (DImode, 24);
+ rtx valreg2 = gen_rtx_raw_REG (TARGET_ARCH64 ? TFmode : DFmode, 32);
rtx result = operands[0];
if (! TARGET_ARCH64)
{
- rtx rtnreg = gen_rtx (REG, SImode, (leaf_function ? 15 : 31));
+ rtx rtnreg = gen_rtx_raw_REG (SImode, (leaf_function ? 15 : 31));
rtx value = gen_reg_rtx (SImode);
/* Fetch the instruction where we will return to and see if it's an unimp
instruction (the most significant 10 bits will be zero). If so,
update the return address to skip the unimp instruction. */
emit_move_insn (value,
- gen_rtx (MEM, SImode, plus_constant (rtnreg, 8)));
+ gen_rtx_MEM (SImode, plus_constant (rtnreg, 8)));
emit_insn (gen_lshrsi3 (value, value, GEN_INT (22)));
emit_insn (gen_update_return (rtnreg, value));
}
@@ -5916,8 +5916,8 @@ if (! TARGET_ARCH64)
plus_constant (XEXP (result, 0), 8)));
/* Put USE insns before the return. */
- emit_insn (gen_rtx (USE, VOIDmode, valreg1));
- emit_insn (gen_rtx (USE, VOIDmode, valreg2));
+ emit_insn (gen_rtx_USE (VOIDmode, valreg1));
+ emit_insn (gen_rtx_USE (VOIDmode, valreg2));
/* Construct the return. */
expand_null_return ();
@@ -5999,7 +5999,7 @@ if (! TARGET_ARCH64)
/* Find the containing function's current nonlocal goto handler,
which will do any cleanups and then jump to the label. */
- labreg = gen_rtx (REG, Pmode, 8);
+ labreg = gen_rtx_raw_REG (Pmode, 8);
emit_move_insn (labreg, lab);
/* Restore %fp from stack pointer value for containing function.
@@ -6009,8 +6009,8 @@ if (! TARGET_ARCH64)
/* USE of frame_pointer_rtx added for consistency; not clear if
really needed. */
- /*emit_insn (gen_rtx (USE, VOIDmode, frame_pointer_rtx));*/
- emit_insn (gen_rtx (USE, VOIDmode, stack_pointer_rtx));
+ /*emit_insn (gen_rtx_USE (VOIDmode, frame_pointer_rtx));*/
+ emit_insn (gen_rtx_USE (VOIDmode, stack_pointer_rtx));
/* Return, restoring reg window and jumping to goto handler. */
if (TARGET_V9 && GET_CODE (chain) == CONST_INT
&& ! (INTVAL (chain) & ~(HOST_WIDE_INT)0xffffffff))
@@ -6022,7 +6022,7 @@ if (! TARGET_ARCH64)
}
/* Put in the static chain register the nonlocal label address. */
emit_move_insn (static_chain_rtx, chain);
- emit_insn (gen_rtx (USE, VOIDmode, static_chain_rtx));
+ emit_insn (gen_rtx_USE (VOIDmode, static_chain_rtx));
emit_insn (gen_goto_handler_and_restore (labreg));
emit_barrier ();
DONE;
@@ -6152,8 +6152,8 @@ if (! TARGET_ARCH64)
"
{
operands[3] = XEXP (operands[0], 0);
- operands[4] = gen_rtx (MEM, GET_MODE (operands[0]),
- gen_rtx (LO_SUM, SImode, operands[2], operands[3]));
+ operands[4] = gen_rtx_MEM (GET_MODE (operands[0]),
+ gen_rtx_LO_SUM (SImode, operands[2], operands[3]));
MEM_IN_STRUCT_P (operands[4]) = MEM_IN_STRUCT_P (operands[0]);
MEM_VOLATILE_P (operands[4]) = MEM_VOLATILE_P (operands[0]);
RTX_UNCHANGING_P (operands[4]) = RTX_UNCHANGING_P (operands[0]);
@@ -6170,7 +6170,7 @@ if (! TARGET_ARCH64)
rtx addr = legitimize_pic_address (XEXP (operands[0], 0),
GET_MODE (operands[0]),
operands[2]);
- operands[3] = gen_rtx (MEM, GET_MODE (operands[0]), addr);
+ operands[3] = gen_rtx_MEM (GET_MODE (operands[0]), addr);
MEM_IN_STRUCT_P (operands[3]) = MEM_IN_STRUCT_P (operands[0]);
MEM_VOLATILE_P (operands[3]) = MEM_VOLATILE_P (operands[0]);
RTX_UNCHANGING_P (operands[3]) = RTX_UNCHANGING_P (operands[0]);
@@ -6186,7 +6186,7 @@ if (! TARGET_ARCH64)
rtx addr = legitimize_pic_address (XEXP (operands[1], 0),
GET_MODE (operands[1]),
operands[0]);
- operands[2] = gen_rtx (MEM, GET_MODE (operands[1]), addr);
+ operands[2] = gen_rtx_MEM (GET_MODE (operands[1]), addr);
MEM_IN_STRUCT_P (operands[2]) = MEM_IN_STRUCT_P (operands[1]);
MEM_VOLATILE_P (operands[2]) = MEM_VOLATILE_P (operands[1]);
RTX_UNCHANGING_P (operands[2]) = RTX_UNCHANGING_P (operands[1]);
@@ -6204,7 +6204,7 @@ if (! TARGET_ARCH64)
rtx addr = legitimize_pic_address (XEXP (operands[2], 0),
GET_MODE (operands[2]),
operands[0]);
- operands[3] = gen_rtx (MEM, GET_MODE (operands[2]), addr);
+ operands[3] = gen_rtx_MEM (GET_MODE (operands[2]), addr);
MEM_IN_STRUCT_P (operands[3]) = MEM_IN_STRUCT_P (operands[2]);
MEM_VOLATILE_P (operands[3]) = MEM_VOLATILE_P (operands[2]);
RTX_UNCHANGING_P (operands[3]) = RTX_UNCHANGING_P (operands[2]);
@@ -6483,8 +6483,8 @@ if (! TARGET_ARCH64)
{
/* Go by way of output_move_double in case the register in operand 2
is not properly aligned for ldd. */
- operands[1] = gen_rtx (MEM, DFmode,
- gen_rtx (LO_SUM, SImode, operands[0], operands[1]));
+ operands[1] = gen_rtx_MEM (DFmode,
+ gen_rtx_LO_SUM (SImode, operands[0], operands[1]));
operands[0] = operands[2];
return output_move_double (operands);
}")