aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/rs6000/rs6000.md
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/config/rs6000/rs6000.md')
-rw-r--r--gcc/config/rs6000/rs6000.md254
1 files changed, 126 insertions, 128 deletions
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md
index e6be7d75608..0c095f95c2c 100644
--- a/gcc/config/rs6000/rs6000.md
+++ b/gcc/config/rs6000/rs6000.md
@@ -1370,11 +1370,11 @@
{
if (! TARGET_POWER && ! TARGET_POWERPC)
{
- emit_move_insn (gen_rtx (REG, SImode, 3), operands[1]);
- emit_move_insn (gen_rtx (REG, SImode, 4), operands[2]);
+ emit_move_insn (gen_rtx_REG (SImode, 3), operands[1]);
+ emit_move_insn (gen_rtx_REG (SImode, 4), operands[2]);
emit_insn (gen_divss_call ());
- emit_move_insn (operands[0], gen_rtx (REG, SImode, 3));
- emit_move_insn (operands[3], gen_rtx (REG, SImode, 4));
+ emit_move_insn (operands[0], gen_rtx_REG (SImode, 3));
+ emit_move_insn (operands[3], gen_rtx_REG (SImode, 4));
DONE;
}
}")
@@ -1398,10 +1398,10 @@
{
if (! TARGET_POWER && ! TARGET_POWERPC)
{
- emit_move_insn (gen_rtx (REG, SImode, 3), operands[1]);
- emit_move_insn (gen_rtx (REG, SImode, 4), operands[2]);
+ emit_move_insn (gen_rtx_REG (SImode, 3), operands[1]);
+ emit_move_insn (gen_rtx_REG (SImode, 4), operands[2]);
emit_insn (gen_quous_call ());
- emit_move_insn (operands[0], gen_rtx (REG, SImode, 3));
+ emit_move_insn (operands[0], gen_rtx_REG (SImode, 3));
DONE;
}
else if (TARGET_POWER)
@@ -1455,10 +1455,10 @@
FAIL;
else
{
- emit_move_insn (gen_rtx (REG, SImode, 3), operands[1]);
- emit_move_insn (gen_rtx (REG, SImode, 4), operands[2]);
+ emit_move_insn (gen_rtx_REG (SImode, 3), operands[1]);
+ emit_move_insn (gen_rtx_REG (SImode, 4), operands[2]);
emit_insn (gen_quoss_call ());
- emit_move_insn (operands[0], gen_rtx (REG, SImode, 3));
+ emit_move_insn (operands[0], gen_rtx_REG (SImode, 3));
DONE;
}
}")
@@ -1607,11 +1607,11 @@
{
if (! TARGET_POWERPC)
{
- emit_move_insn (gen_rtx (REG, SImode, 3), operands[1]);
- emit_move_insn (gen_rtx (REG, SImode, 4), operands[2]);
+ emit_move_insn (gen_rtx_REG (SImode, 3), operands[1]);
+ emit_move_insn (gen_rtx_REG (SImode, 4), operands[2]);
emit_insn (gen_divus_call ());
- emit_move_insn (operands[0], gen_rtx (REG, SImode, 3));
- emit_move_insn (operands[3], gen_rtx (REG, SImode, 4));
+ emit_move_insn (operands[0], gen_rtx_REG (SImode, 3));
+ emit_move_insn (operands[3], gen_rtx_REG (SImode, 4));
DONE;
}
else
@@ -3705,7 +3705,7 @@
"
{
operands[6] = GEN_INT (0x80000000);
- operands[7] = gen_rtx (REG, DFmode, FPMEM_REGNUM);
+ operands[7] = gen_rtx_REG (DFmode, FPMEM_REGNUM);
}")
(define_expand "floatunssidf2"
@@ -3759,7 +3759,7 @@
(set (match_dup 0)
(minus:DF (match_dup 0)
(match_dup 3)))]
- "operands[5] = gen_rtx (REG, DFmode, FPMEM_REGNUM);")
+ "operands[5] = gen_rtx_REG (DFmode, FPMEM_REGNUM);")
;; Load up scratch register with base address + offset if needed
(define_insn "*floatsidf2_loadaddr"
@@ -3800,11 +3800,11 @@
indx = stack_pointer_rtx;
operands[2]
- = gen_rtx (MEM, SImode,
- gen_rtx (PLUS, Pmode, indx,
- GEN_INT ((((rs6000_fpmem_offset & 0xffff) ^ 0x8000)
- - 0x8000)
- + ((WORDS_BIG_ENDIAN != 0) * 4))));
+ = gen_rtx_MEM (SImode,
+ plus_constant (indx,
+ (((rs6000_fpmem_offset & 0xffff) ^ 0x8000)
+ - 0x8000)
+ + ((WORDS_BIG_ENDIAN != 0) * 4)));
return \"{st|stw} %0,%2\";
}"
@@ -3828,11 +3828,11 @@
indx = stack_pointer_rtx;
operands[2]
- = gen_rtx (MEM, SImode,
- gen_rtx (PLUS, Pmode, indx,
- GEN_INT ((((rs6000_fpmem_offset & 0xffff) ^ 0x8000)
- - 0x8000)
- + ((WORDS_BIG_ENDIAN == 0) * 4))));
+ = gen_rtx_MEM (SImode,
+ plus_constant (indx,
+ (((rs6000_fpmem_offset & 0xffff) ^ 0x8000)
+ - 0x8000)
+ + ((WORDS_BIG_ENDIAN == 0) * 4)));
return \"{st|stw} %0,%2\";
}"
@@ -3858,8 +3858,7 @@
else
indx = stack_pointer_rtx;
- operands[2] = gen_rtx (MEM, SImode,
- gen_rtx (PLUS, Pmode, indx, GEN_INT (offset)));
+ operands[2] = gen_rtx_MEM (SImode, plus_constant (indx, offset));
return \"lfd %0,%2\";
}"
@@ -3877,13 +3876,13 @@
if (!TARGET_POWER2 && !TARGET_POWERPC)
{
emit_insn (gen_trunc_call (operands[0], operands[1],
- gen_rtx (SYMBOL_REF, Pmode, RS6000_ITRUNC)));
+ gen_rtx_SYMBOL_REF (Pmode, RS6000_ITRUNC)));
DONE;
}
operands[2] = gen_reg_rtx (DImode);
operands[3] = gen_reg_rtx (Pmode);
- operands[4] = gen_rtx (REG, DImode, FPMEM_REGNUM);
+ operands[4] = gen_rtx_REG (DImode, FPMEM_REGNUM);
}")
(define_insn "*fix_truncdfsi2_internal"
@@ -3913,7 +3912,7 @@
(set (match_operand:SI 0 "gpc_reg_operand" "")
(unspec [(match_dup 4)
(match_dup 3)] 16))]
- "operands[4] = gen_rtx (REG, DImode, FPMEM_REGNUM);")
+ "operands[4] = gen_rtx_REG (DImode, FPMEM_REGNUM);")
(define_insn "*fix_truncdfsi2_store"
[(set (reg:DI 76)
@@ -3931,11 +3930,10 @@
else
indx = stack_pointer_rtx;
- operands[2] = gen_rtx (MEM, DFmode,
- gen_rtx (PLUS, Pmode,
- indx,
- GEN_INT ((((rs6000_fpmem_offset & 0xffff)
- ^ 0x8000) - 0x8000))));
+ operands[2] = gen_rtx_MEM (DFmode,
+ plus_constant (indx,
+ (((rs6000_fpmem_offset & 0xffff)
+ ^ 0x8000) - 0x8000)));
return \"stfd %0,%w2\";
}"
@@ -3958,11 +3956,11 @@
indx = stack_pointer_rtx;
operands[2]
- = gen_rtx (MEM, DFmode,
- gen_rtx (PLUS, Pmode, indx,
- GEN_INT ((((rs6000_fpmem_offset & 0xffff) ^ 0x8000)
- - 0x8000)
- + ((WORDS_BIG_ENDIAN) ? 4 : 0))));
+ = gen_rtx_MEM (DFmode,
+ plus_constant (indx,
+ (((rs6000_fpmem_offset & 0xffff) ^ 0x8000)
+ - 0x8000)
+ + ((WORDS_BIG_ENDIAN) ? 4 : 0)));
return \"{l|lwz} %0,%2\";
}"
@@ -3975,7 +3973,7 @@
"
{
emit_insn (gen_trunc_call (operands[0], operands[1],
- gen_rtx (SYMBOL_REF, Pmode, RS6000_UITRUNC)));
+ gen_rtx_SYMBOL_REF (Pmode, RS6000_UITRUNC)));
DONE;
}")
@@ -3990,9 +3988,9 @@
rtx first = XVECEXP (insns, 0, 0);
rtx last = XVECEXP (insns, 0, XVECLEN (insns, 0) - 1);
- REG_NOTES (first) = gen_rtx (INSN_LIST, REG_LIBCALL, last,
- REG_NOTES (first));
- REG_NOTES (last) = gen_rtx (INSN_LIST, REG_RETVAL, first, REG_NOTES (last));
+ REG_NOTES (first) = gen_rtx_INSN_LIST (REG_LIBCALL, last,
+ REG_NOTES (first));
+ REG_NOTES (last) = gen_rtx_INSN_LIST (REG_RETVAL, first, REG_NOTES (last));
emit_insn (insns);
DONE;
@@ -4097,17 +4095,17 @@
{
if (! TARGET_POWER && ! TARGET_POWERPC)
{
- emit_move_insn (gen_rtx (REG, SImode, 3), operands[1]);
- emit_move_insn (gen_rtx (REG, SImode, 4), operands[2]);
+ emit_move_insn (gen_rtx_REG (SImode, 3), operands[1]);
+ emit_move_insn (gen_rtx_REG (SImode, 4), operands[2]);
emit_insn (gen_mull_call ());
if (WORDS_BIG_ENDIAN)
- emit_move_insn (operands[0], gen_rtx (REG, DImode, 3));
+ emit_move_insn (operands[0], gen_rtx_REG (DImode, 3));
else
{
emit_move_insn (operand_subword (operands[0], 0, 0, DImode),
- gen_rtx (REG, SImode, 3));
+ gen_rtx_REG (SImode, 3));
emit_move_insn (operand_subword (operands[0], 1, 0, DImode),
- gen_rtx (REG, SImode, 4));
+ gen_rtx_REG (SImode, 4));
}
DONE;
}
@@ -4238,10 +4236,10 @@
{
if (! TARGET_POWER && ! TARGET_POWERPC)
{
- emit_move_insn (gen_rtx (REG, SImode, 3), operands[1]);
- emit_move_insn (gen_rtx (REG, SImode, 4), operands[2]);
+ emit_move_insn (gen_rtx_REG (SImode, 3), operands[1]);
+ emit_move_insn (gen_rtx_REG (SImode, 4), operands[2]);
emit_insn (gen_mulh_call ());
- emit_move_insn (operands[0], gen_rtx (REG, SImode, 3));
+ emit_move_insn (operands[0], gen_rtx_REG (SImode, 3));
DONE;
}
else if (TARGET_POWER)
@@ -5467,7 +5465,7 @@
|| GET_CODE (operands[1]) == CONST)
&& small_data_operand (operands[1], SImode))
{
- emit_insn (gen_rtx (SET, VOIDmode, operands[0], operands[1]));
+ emit_insn (gen_rtx_SET (VOIDmode, operands[0], operands[1]));
DONE;
}
@@ -5497,7 +5495,7 @@
rtx new_ref;
while (*name == '.')
name++;
- new_ref = gen_rtx (SYMBOL_REF, Pmode, name);
+ new_ref = gen_rtx_SYMBOL_REF (Pmode, name);
CONSTANT_POOL_ADDRESS_P (new_ref)
= CONSTANT_POOL_ADDRESS_P (operands[1]);
SYMBOL_REF_FLAG (new_ref) = SYMBOL_REF_FLAG (operands[1]);
@@ -5548,7 +5546,7 @@
This should not be done for operands that contain LABEL_REFs.
For now, we just handle the obvious case. */
if (GET_CODE (operands[1]) != LABEL_REF)
- emit_insn (gen_rtx (USE, VOIDmode, operands[1]));
+ emit_insn (gen_rtx_USE (VOIDmode, operands[1]));
/* If we are to limit the number of things we put in the TOC and
this is a symbol plus a constant we can add in one insn,
@@ -6172,7 +6170,7 @@
This should not be done for operands that contain LABEL_REFs.
For now, we just handle the obvious case. */
if (GET_CODE (operands[1]) != LABEL_REF)
- emit_insn (gen_rtx (USE, VOIDmode, operands[1]));
+ emit_insn (gen_rtx_USE (VOIDmode, operands[1]));
/* If we are to limit the number of things we put in the TOC and
this is a symbol plus a constant we can add in one insn,
@@ -6258,8 +6256,8 @@
(set (match_dup 3) (match_dup 1))]
"
{
- operands[2] = gen_rtx (SUBREG, SImode, operands[0], WORDS_BIG_ENDIAN == 0);
- operands[3] = gen_rtx (SUBREG, SImode, operands[0], WORDS_BIG_ENDIAN != 0);
+ operands[2] = gen_rtx_SUBREG (SImode, operands[0], WORDS_BIG_ENDIAN == 0);
+ operands[3] = gen_rtx_SUBREG (SImode, operands[0], WORDS_BIG_ENDIAN != 0);
operands[4] = ((INTVAL (operands[1]) & 0x80000000)
? constm1_rtx : const0_rtx);
}")
@@ -6272,8 +6270,8 @@
(set (match_dup 3) (match_dup 5))]
"
{
- operands[2] = gen_rtx (SUBREG, SImode, operands[0], WORDS_BIG_ENDIAN == 0);
- operands[3] = gen_rtx (SUBREG, SImode, operands[0], WORDS_BIG_ENDIAN != 0);
+ operands[2] = gen_rtx_SUBREG (SImode, operands[0], WORDS_BIG_ENDIAN == 0);
+ operands[3] = gen_rtx_SUBREG (SImode, operands[0], WORDS_BIG_ENDIAN != 0);
operands[4] = GEN_INT (CONST_DOUBLE_HIGH (operands[1]));
operands[5] = GEN_INT (CONST_DOUBLE_LOW (operands[1]));
}")
@@ -6636,14 +6634,14 @@
count = INTVAL (operands[2]);
regno = REGNO (operands[0]);
- operands[3] = gen_rtx (PARALLEL, VOIDmode, rtvec_alloc (count));
+ operands[3] = gen_rtx_PARALLEL (VOIDmode, rtvec_alloc (count));
from = force_reg (SImode, XEXP (operands[1], 0));
for (i = 0; i < count; i++)
XVECEXP (operands[3], 0, i)
- = gen_rtx (SET, VOIDmode, gen_rtx (REG, SImode, regno + i),
- change_address (operands[1], SImode,
- plus_constant (from, i * 4)));
+ = gen_rtx_SET (VOIDmode, gen_rtx_REG (SImode, regno + i),
+ change_address (operands[1], SImode,
+ plus_constant (from, i * 4)));
}")
(define_insn ""
@@ -6678,7 +6676,7 @@
else if (i == 0)
{
xop[0] = operands[1];
- xop[1] = gen_rtx (REG, SImode, REGNO (operands[1]) + 1);
+ xop[1] = gen_rtx_REG (SImode, REGNO (operands[1]) + 1);
xop[2] = GEN_INT (4 * (words-1));
output_asm_insn (\"{cal %0,4(%0)|addi %0,%0,4}\;{lsi|lswi} %1,%0,%2\;{l|lwz} %0,-4(%0)\", xop);
return \"\";
@@ -6688,7 +6686,7 @@
for (j = 0; j < words; j++)
if (j != i)
{
- xop[0] = gen_rtx (REG, SImode, REGNO (operands[1]) + j);
+ xop[0] = gen_rtx_REG (SImode, REGNO (operands[1]) + j);
xop[1] = operands[2];
xop[2] = GEN_INT (j * 4);
output_asm_insn (\"{l|lwz} %0,%2(%1)\", xop);
@@ -6733,21 +6731,21 @@
count = INTVAL (operands[2]);
regno = REGNO (operands[1]);
- operands[3] = gen_rtx (PARALLEL, VOIDmode, rtvec_alloc (count + 1));
+ operands[3] = gen_rtx_PARALLEL (VOIDmode, rtvec_alloc (count + 1));
to = force_reg (SImode, XEXP (operands[0], 0));
XVECEXP (operands[3], 0, 0)
- = gen_rtx (SET, VOIDmode, change_address (operands[0], SImode, to),
- operands[1]);
- XVECEXP (operands[3], 0, 1) = gen_rtx (CLOBBER, VOIDmode,
- gen_rtx (SCRATCH, SImode));
+ = gen_rtx_SET (VOIDmode, change_address (operands[0], SImode, to),
+ operands[1]);
+ XVECEXP (operands[3], 0, 1) = gen_rtx_CLOBBER (VOIDmode,
+ gen_rtx_SCRATCH (SImode));
for (i = 1; i < count; i++)
XVECEXP (operands[3], 0, i + 1)
- = gen_rtx (SET, VOIDmode,
- change_address (operands[0], SImode,
- plus_constant (to, i * 4)),
- gen_rtx (REG, SImode, regno + i));
+ = gen_rtx_SET (VOIDmode,
+ change_address (operands[0], SImode,
+ plus_constant (to, i * 4)),
+ gen_rtx_REG (SImode, regno + i));
}")
(define_insn ""
@@ -7309,7 +7307,7 @@
""
"
{ rtx chain = gen_reg_rtx (Pmode);
- rtx stack_bot = gen_rtx (MEM, Pmode, stack_pointer_rtx);
+ rtx stack_bot = gen_rtx_MEM (Pmode, stack_pointer_rtx);
rtx neg_op0;
emit_move_insn (chain, stack_bot);
@@ -7321,7 +7319,7 @@
&& (GET_CODE (operands[1]) != CONST_INT || INTVAL (operands[1]) > 4096))
{
rtx tmp = gen_reg_rtx (Pmode);
- emit_library_call_value (gen_rtx (SYMBOL_REF, Pmode,
+ emit_library_call_value (gen_rtx_SYMBOL_REF (Pmode,
\"__allocate_stack\"),
tmp, 0, Pmode, 1, operands[1], Pmode);
emit_insn (gen_set_sp (tmp));
@@ -7350,7 +7348,7 @@
{
emit_insn ((* ((TARGET_32BIT) ? gen_addsi3 : gen_adddi3))
(stack_pointer_rtx, stack_pointer_rtx, neg_op0));
- emit_move_insn (gen_rtx (MEM, Pmode, stack_pointer_rtx), chain);
+ emit_move_insn (gen_rtx_MEM (Pmode, stack_pointer_rtx), chain);
}
emit_move_insn (operands[0], virtual_stack_dynamic_rtx);
@@ -7395,7 +7393,7 @@
"
{
operands[2] = gen_reg_rtx (Pmode);
- operands[3] = gen_rtx (MEM, Pmode, operands[0]);
+ operands[3] = gen_rtx_MEM (Pmode, operands[0]);
}")
(define_expand "save_stack_nonlocal"
@@ -7407,7 +7405,7 @@
rtx temp = gen_reg_rtx (Pmode);
/* Copy the backchain to the first word, sp to the second. */
- emit_move_insn (temp, gen_rtx (MEM, Pmode, operands[1]));
+ emit_move_insn (temp, gen_rtx_MEM (Pmode, operands[1]));
emit_move_insn (operand_subword (operands[0], 0, 0,
(TARGET_32BIT ? DImode : TImode)),
temp);
@@ -7432,7 +7430,7 @@
emit_move_insn (operands[0],
operand_subword (operands[1], 1, 0,
(TARGET_32BIT ? DImode : TImode)));
- emit_move_insn (gen_rtx (MEM, Pmode, operands[0]), temp);
+ emit_move_insn (gen_rtx_MEM (Pmode, operands[0]), temp);
DONE;
}")
@@ -7660,14 +7658,14 @@
operands[1], operands[2]));
else
{
- rtx toc_reg = gen_rtx (REG, Pmode, 2);
+ rtx toc_reg = gen_rtx_REG (Pmode, 2);
rtx toc_addr = RS6000_SAVE_TOC;
if (DEFAULT_ABI == ABI_AIX)
{
/* AIX function pointers are really pointers to a three word
area. */
- rtx static_chain = gen_rtx (REG, Pmode, STATIC_CHAIN_REGNUM);
+ rtx static_chain = gen_rtx_REG (Pmode, STATIC_CHAIN_REGNUM);
emit_call_insn (TARGET_32BIT
? gen_call_indirect_aix32
(force_reg (Pmode, operands[0]),
@@ -7728,14 +7726,14 @@
operands[3]));
else
{
- rtx toc_reg = gen_rtx (REG, Pmode, 2);
+ rtx toc_reg = gen_rtx_REG (Pmode, 2);
rtx toc_addr = RS6000_SAVE_TOC;
if (DEFAULT_ABI == ABI_AIX)
{
/* AIX function pointers are really pointers to a three word
area. */
- rtx static_chain = gen_rtx (REG, Pmode, STATIC_CHAIN_REGNUM);
+ rtx static_chain = gen_rtx_REG (Pmode, STATIC_CHAIN_REGNUM);
emit_call_insn (TARGET_32BIT
? gen_call_value_indirect_aix32
(operands[0],
@@ -8131,8 +8129,8 @@
""
"
{ enum machine_mode mode = rs6000_compare_fp_p ? CCFPmode : CCmode;
- operands[1] = gen_rtx (COMPARE, mode,
- rs6000_compare_op0, rs6000_compare_op1);
+ operands[1] = gen_rtx_COMPARE (mode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (mode);
}")
@@ -8146,8 +8144,8 @@
""
"
{ enum machine_mode mode = rs6000_compare_fp_p ? CCFPmode : CCmode;
- operands[1] = gen_rtx (COMPARE, mode,
- rs6000_compare_op0, rs6000_compare_op1);
+ operands[1] = gen_rtx_COMPARE (mode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (mode);
}")
@@ -8161,8 +8159,8 @@
""
"
{ enum machine_mode mode = rs6000_compare_fp_p ? CCFPmode : CCmode;
- operands[1] = gen_rtx (COMPARE, mode,
- rs6000_compare_op0, rs6000_compare_op1);
+ operands[1] = gen_rtx_COMPARE (mode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (mode);
}")
@@ -8176,8 +8174,8 @@
""
"
{ enum machine_mode mode = rs6000_compare_fp_p ? CCFPmode : CCmode;
- operands[1] = gen_rtx (COMPARE, mode,
- rs6000_compare_op0, rs6000_compare_op1);
+ operands[1] = gen_rtx_COMPARE (mode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (mode);
}")
@@ -8191,8 +8189,8 @@
""
"
{ enum machine_mode mode = rs6000_compare_fp_p ? CCFPmode : CCmode;
- operands[1] = gen_rtx (COMPARE, mode,
- rs6000_compare_op0, rs6000_compare_op1);
+ operands[1] = gen_rtx_COMPARE (mode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (mode);
}")
@@ -8206,8 +8204,8 @@
""
"
{ enum machine_mode mode = rs6000_compare_fp_p ? CCFPmode : CCmode;
- operands[1] = gen_rtx (COMPARE, mode,
- rs6000_compare_op0, rs6000_compare_op1);
+ operands[1] = gen_rtx_COMPARE (mode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (mode);
}")
@@ -8220,8 +8218,8 @@
(pc)))]
""
"
-{ operands[1] = gen_rtx (COMPARE, CCUNSmode,
- rs6000_compare_op0, rs6000_compare_op1);
+{ operands[1] = gen_rtx_COMPARE (CCUNSmode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (CCUNSmode);
}")
@@ -8234,8 +8232,8 @@
(pc)))]
""
"
-{ operands[1] = gen_rtx (COMPARE, CCUNSmode,
- rs6000_compare_op0, rs6000_compare_op1);
+{ operands[1] = gen_rtx_COMPARE (CCUNSmode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (CCUNSmode);
}")
@@ -8248,8 +8246,8 @@
(pc)))]
""
"
-{ operands[1] = gen_rtx (COMPARE, CCUNSmode,
- rs6000_compare_op0, rs6000_compare_op1);
+{ operands[1] = gen_rtx_COMPARE (CCUNSmode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (CCUNSmode);
}")
@@ -8262,8 +8260,8 @@
(pc)))]
""
"
-{ operands[1] = gen_rtx (COMPARE, CCUNSmode,
- rs6000_compare_op0, rs6000_compare_op1);
+{ operands[1] = gen_rtx_COMPARE (CCUNSmode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (CCUNSmode);
}")
@@ -8279,8 +8277,8 @@
""
"
{ enum machine_mode mode = rs6000_compare_fp_p ? CCFPmode : CCmode;
- operands[1] = gen_rtx (COMPARE, mode,
- rs6000_compare_op0, rs6000_compare_op1);
+ operands[1] = gen_rtx_COMPARE (mode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (mode);
}")
@@ -8293,8 +8291,8 @@
{ if (! rs6000_compare_fp_p)
FAIL;
- operands[1] = gen_rtx (COMPARE, CCFPmode,
- rs6000_compare_op0, rs6000_compare_op1);
+ operands[1] = gen_rtx_COMPARE (CCFPmode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (CCFPmode);
}")
@@ -8310,8 +8308,8 @@
if (! rs6000_compare_fp_p && rs6000_compare_op1 == const0_rtx)
FAIL;
- operands[1] = gen_rtx (COMPARE, mode,
- rs6000_compare_op0, rs6000_compare_op1);
+ operands[1] = gen_rtx_COMPARE (mode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (mode);
}")
@@ -8327,8 +8325,8 @@
if (! rs6000_compare_fp_p && rs6000_compare_op1 == const0_rtx)
FAIL;
- operands[1] = gen_rtx (COMPARE, mode,
- rs6000_compare_op0, rs6000_compare_op1);
+ operands[1] = gen_rtx_COMPARE (mode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (mode);
}")
@@ -8339,8 +8337,8 @@
""
"
{ enum machine_mode mode = rs6000_compare_fp_p ? CCFPmode : CCmode;
- operands[1] = gen_rtx (COMPARE, mode,
- rs6000_compare_op0, rs6000_compare_op1);
+ operands[1] = gen_rtx_COMPARE (mode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (mode);
}")
@@ -8356,8 +8354,8 @@
if (! rs6000_compare_fp_p && rs6000_compare_op1 == const0_rtx)
FAIL;
- operands[1] = gen_rtx (COMPARE, mode,
- rs6000_compare_op0, rs6000_compare_op1);
+ operands[1] = gen_rtx_COMPARE (mode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (mode);
}")
@@ -8367,8 +8365,8 @@
(gtu:SI (match_dup 2) (const_int 0)))]
""
"
-{ operands[1] = gen_rtx (COMPARE, CCUNSmode,
- rs6000_compare_op0, rs6000_compare_op1);
+{ operands[1] = gen_rtx_COMPARE (CCUNSmode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (CCUNSmode);
}")
@@ -8378,8 +8376,8 @@
(ltu:SI (match_dup 2) (const_int 0)))]
""
"
-{ operands[1] = gen_rtx (COMPARE, CCUNSmode,
- rs6000_compare_op0, rs6000_compare_op1);
+{ operands[1] = gen_rtx_COMPARE (CCUNSmode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (CCUNSmode);
}")
@@ -8389,8 +8387,8 @@
(geu:SI (match_dup 2) (const_int 0)))]
""
"
-{ operands[1] = gen_rtx (COMPARE, CCUNSmode,
- rs6000_compare_op0, rs6000_compare_op1);
+{ operands[1] = gen_rtx_COMPARE (CCUNSmode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (CCUNSmode);
}")
@@ -8400,8 +8398,8 @@
(leu:SI (match_dup 2) (const_int 0)))]
""
"
-{ operands[1] = gen_rtx (COMPARE, CCUNSmode,
- rs6000_compare_op0, rs6000_compare_op1);
+{ operands[1] = gen_rtx_COMPARE (CCUNSmode,
+ rs6000_compare_op0, rs6000_compare_op1);
operands[2] = gen_reg_rtx (CCUNSmode);
}")
@@ -9848,7 +9846,7 @@
""
"
{ operands[0] = force_reg (SImode, operands[0]);
- operands[2] = force_reg (SImode, gen_rtx (LABEL_REF, VOIDmode, operands[1]));
+ operands[2] = force_reg (SImode, gen_rtx_LABEL_REF (SImode, operands[1]));
operands[3] = gen_reg_rtx (SImode);
}")
@@ -9861,7 +9859,7 @@
""
"
{ operands[0] = force_reg (DImode, operands[0]);
- operands[2] = force_reg (DImode, gen_rtx (LABEL_REF, VOIDmode, operands[1]));
+ operands[2] = force_reg (DImode, gen_rtx_LABEL_REF (SImode, operands[1]));
operands[3] = gen_reg_rtx (DImode);
}")