if (!TARGET_68040 && !TARGET_68060)
return \"sub%.l %0,%0\";
else
- {
-#ifdef MOTOROLA
+ return MOTOROLA ?
#ifdef SGS
/* Many SGS assemblers croak on size specifiers for constants. */
- return \"lea 0,%0\";
-#else
- return \"lea 0.w,%0\";
-#endif
+ \"lea 0,%0\" :
#else
- return \"lea 0:w,%0\";
+ \"lea 0.w,%0\" :
#endif
- }
+ \"lea 0:w,%0\";
}
/* moveq is faster on the 68000. */
if (DATA_REG_P (operands[0]) && (!TARGET_68020 && !TARGET_COLDFIRE))
if (!TARGET_68040 && !TARGET_68060)
return \"sub%.l %0,%0\";
else
- {
-#ifdef MOTOROLA
+ return MOTOROLA ?
#ifdef SGS
/* Many SGS assemblers croak on size specifiers for constants. */
- return \"lea 0,%0\";
-#else
- return \"lea 0.w,%0\";
-#endif
+ \"lea 0,%0\" :
#else
- return \"lea 0:w,%0\";
+ \"lea 0.w,%0\" :
#endif
- }
+ \"lea 0:w,%0\";
}
/* moveq is faster on the 68000. */
if (DATA_REG_P (operands[0]) && !(TARGET_68020 || TARGET_COLDFIRE))
&& GET_CODE (XEXP (operands[0], 0)) == PRE_DEC)
{
operands[0] = XEXP (XEXP (operands[0], 0), 0);
-#ifdef MOTOROLA
+ return MOTOROLA ?
#ifdef SGS
- return \"clr%.l -(%0)\;move%.b %1,3(%0)\";
-#else
- return \"clr%.l -(%0)\;move%.b %1,(3,%0)\";
-#endif
+ \"clr%.l -(%0)\;move%.b %1,3(%0)\" :
#else
- return \"clrl %0@-\;moveb %1,%0@(3)\";
+ \"clr%.l -(%0)\;move%.b %1,(3,%0)\" :
#endif
+ \"clrl %0@-\;moveb %1,%0@(3)\";
+
}
else if (GET_CODE (operands[0]) == MEM
&& GET_CODE (XEXP (operands[0], 0)) == POST_INC)
{
operands[0] = XEXP (XEXP (operands[0], 0), 0);
-#ifdef MOTOROLA
+ return MOTOROLA ?
#ifdef SGS
- return \"clr%.l (%0)+\;move%.b %1,-1(%0)\";
+ \"clr%.l (%0)+\;move%.b %1,-1(%0)\" :
#else
- return \"clr%.l (%0)+\;move%.b %1,(-1,%0)\";
-#endif
-#else
- return \"clrl %0@+\;moveb %1,%0@(-1)\";
+ \"clr%.l (%0)+\;move%.b %1,(-1,%0)\" :
#endif
+ \"clrl %0@+\;moveb %1,%0@(-1)\";
}
else
{
operands[2] = gen_rtx_MEM (SImode, XEXP (XEXP (operands[0], 0), 0));
}
output_asm_insn (\"move%.l %1,%0\", operands);
-#ifdef MOTOROLA
- output_asm_insn (\"jbpl %l3\", operands);
-#else
- output_asm_insn (\"jpl %l3\", operands);
-#endif
+ output_asm_insn (MOTOROLA ? \"jbpl %l3\" : \"jpl %l3\", operands);
output_asm_insn (\"addq%.l %#1,%2\", operands);
(*targetm.asm_out.internal_label) (asm_out_file, \"L\",
CODE_LABEL_NUMBER (operands[3]));
}
}
if (ADDRESS_REG_P (operands[0]) && !TARGET_68040)
-#ifdef MOTOROLA
- return \"lea (%c2,%0),%0\";
-#else
- return \"lea %0@(%c2),%0\";
-#endif
+ return MOTOROLA ? \"lea (%c2,%0),%0\" : \"lea %0@(%c2),%0\";
}
return \"add%.w %2,%0\";
}")
}
}
if (ADDRESS_REG_P (operands[0]) && !TARGET_68040)
-#ifdef MOTOROLA
- return \"lea (%c1,%0),%0\";
-#else
- return \"lea %0@(%c1),%0\";
-#endif
+ return MOTOROLA ? \"lea (%c1,%0),%0\" : \"lea %0@(%c1),%0\";
}
return \"add%.w %1,%0\";
}")
}
}
if (ADDRESS_REG_P (operands[0]) && !TARGET_68040)
-#ifdef MOTOROLA
- return \"lea (%c1,%0),%0\";
-#else
- return \"lea %0@(%c1),%0\";
-#endif
+ return MOTOROLA ? \"lea (%c1,%0),%0\" : \"lea %0@(%c1),%0\";
}
return \"add%.w %1,%0\";
}")
""
"*
{
-#if defined(MOTOROLA)
- return \"muls%.w %2,%0\";
-#else
- return \"muls %2,%0\";
-#endif
+ return MOTOROLA ? \"muls%.w %2,%0\" : \"muls %2,%0\";
}")
(define_insn "mulhisi3"
""
"*
{
-#if defined(MOTOROLA)
- return \"muls%.w %2,%0\";
-#else
- return \"muls %2,%0\";
-#endif
+ return MOTOROLA ? \"muls%.w %2,%0\" : \"muls %2,%0\";
}")
(define_insn ""
"INTVAL (operands[2]) >= -0x8000 && INTVAL (operands[2]) <= 0x7fff"
"*
{
-#if defined(MOTOROLA)
- return \"muls%.w %2,%0\";
-#else
- return \"muls %2,%0\";
-#endif
+ return MOTOROLA ? \"muls%.w %2,%0\" : \"muls %2,%0\";
}")
(define_expand "mulsi3"
""
"*
{
-#if defined(MOTOROLA)
- return \"mulu%.w %2,%0\";
-#else
- return \"mulu %2,%0\";
-#endif
+ return MOTOROLA ? \"mulu%.w %2,%0\" : \"mulu %2,%0\";
}")
(define_insn ""
"INTVAL (operands[2]) >= 0 && INTVAL (operands[2]) <= 0xffff"
"*
{
-#if defined(MOTOROLA)
- return \"mulu%.w %2,%0\";
-#else
- return \"mulu %2,%0\";
-#endif
+ return MOTOROLA ? \"mulu%.w %2,%0\" : \"mulu %2,%0\";
}")
;; We need a separate DEFINE_EXPAND for u?mulsidi3 to be able to use the
"!TARGET_COLDFIRE || TARGET_CF_HWDIV"
"*
{
-#ifdef MOTOROLA
- output_asm_insn (\"ext%.l %0\;divs%.w %2,%0\", operands);
-#else
- output_asm_insn (\"extl %0\;divs %2,%0\", operands);
-#endif
+ output_asm_insn (MOTOROLA ?
+ \"ext%.l %0\;divs%.w %2,%0\" :
+ \"extl %0\;divs %2,%0\",
+ operands);
if (!find_reg_note(insn, REG_UNUSED, operands[3]))
{
CC_STATUS_INIT;
"!TARGET_COLDFIRE || TARGET_CF_HWDIV"
"*
{
-#ifdef MOTOROLA
- output_asm_insn (\"and%.l %#0xFFFF,%0\;divu%.w %2,%0\", operands);
-#else
- output_asm_insn (\"and%.l %#0xFFFF,%0\;divu %2,%0\", operands);
-#endif
+ output_asm_insn (MOTOROLA ?
+ \"and%.l %#0xFFFF,%0\;divu%.w %2,%0\" :
+ \"and%.l %#0xFFFF,%0\;divu %2,%0\",
+ operands);
if (!find_reg_note(insn, REG_UNUSED, operands[3]))
{
CC_STATUS_INIT;
{
CC_STATUS_INIT;
if (which_alternative == 1)
-#ifdef MOTOROLA
- return \"move%.l %0,%2\;or%.l %0,%2\;jbeq %l1\";
-#else
- return \"move%.l %0,%2\;or%.l %0,%2\;jeq %l1\";
-#endif
+ {
+ if (MOTOROLA)
+ return \"move%.l %0,%2\;or%.l %0,%2\;jbeq %l1\";
+ else
+ return \"move%.l %0,%2\;or%.l %0,%2\;jeq %l1\";
+ }
if ((cc_prev_status.value1
&& rtx_equal_p (cc_prev_status.value1, operands[0]))
|| (cc_prev_status.value2
&& rtx_equal_p (cc_prev_status.value2, operands[0])))
{
cc_status = cc_prev_status;
-#ifdef MOTOROLA
- return \"jbeq %l1\";
-#else
- return \"jeq %l1\";
-#endif
+ return MOTOROLA ? \"jbeq %l1\" : \"jeq %l1\";
}
if (GET_CODE (operands[0]) == REG)
operands[3] = gen_rtx_REG (SImode, REGNO (operands[0]) + 1);
{
if (reg_overlap_mentioned_p (operands[2], operands[3]))
{
-#ifdef MOTOROLA
- return \"or%.l %0,%2\;jbeq %l1\";
-#else
- return \"or%.l %0,%2\;jeq %l1\";
-#endif
+ if (MOTOROLA)
+ return \"or%.l %0,%2\;jbeq %l1\";
+ else
+ return \"or%.l %0,%2\;jeq %l1\";
}
else
{
-#ifdef MOTOROLA
- return \"or%.l %3,%2\;jbeq %l1\";
-#else
- return \"or%.l %3,%2\;jeq %l1\";
-#endif
+ if (MOTOROLA)
+ return \"or%.l %3,%2\;jbeq %l1\";
+ else
+ return \"or%.l %3,%2\;jeq %l1\";
}
}
-#ifdef MOTOROLA
- return \"move%.l %0,%2\;or%.l %3,%2\;jbeq %l1\";
-#else
- return \"move%.l %0,%2\;or%.l %3,%2\;jeq %l1\";
-#endif
+ if (MOTOROLA)
+ return \"move%.l %0,%2\;or%.l %3,%2\;jbeq %l1\";
+ else
+ return \"move%.l %0,%2\;or%.l %3,%2\;jeq %l1\";
}
operands[4] = gen_label_rtx();
if (TARGET_68020 || TARGET_COLDFIRE)
{
-#ifdef MOTOROLA
- output_asm_insn (\"tst%.l %0\;jbne %l4\;tst%.l %3\;jbeq %l1\", operands);
-#else
- output_asm_insn (\"tst%.l %0\;jne %l4\;tst%.l %3\;jeq %l1\", operands);
-#endif
+ if (MOTOROLA)
+ output_asm_insn (\"tst%.l %0\;jbne %l4\;tst%.l %3\;jbeq %l1\", operands);
+ else
+ output_asm_insn (\"tst%.l %0\;jne %l4\;tst%.l %3\;jeq %l1\", operands);
}
else
{
-#ifdef MOTOROLA
+ if (MOTOROLA)
#ifdef SGS_CMP_ORDER
- output_asm_insn (\"cmp%.w %0,%#0\;jbne %l4\;cmp%.w %3,%#0\;jbeq %l1\", operands);
-#else
- output_asm_insn (\"cmp%.w %#0,%0\;jbne %l4\;cmp%.w %#0,%3\;jbeq %l1\", operands);
-#endif
+ output_asm_insn (\"cmp%.w %0,%#0\;jbne %l4\;cmp%.w %3,%#0\;jbeq %l1\", operands);
#else
- output_asm_insn (\"cmp%.w %#0,%0\;jne %l4\;cmp%.w %#0,%3\;jeq %l1\", operands);
+ output_asm_insn (\"cmp%.w %#0,%0\;jbne %l4\;cmp%.w %#0,%3\;jbeq %l1\", operands);
#endif
+ else
+ output_asm_insn (\"cmp%.w %#0,%0\;jne %l4\;cmp%.w %#0,%3\;jeq %l1\", operands);
}
(*targetm.asm_out.internal_label) (asm_out_file, \"L\",
CODE_LABEL_NUMBER (operands[4]));
&& rtx_equal_p (cc_prev_status.value2, operands[0])))
{
cc_status = cc_prev_status;
-#ifdef MOTOROLA
- return \"jbne %l1\";
-#else
- return \"jne %l1\";
-#endif
+ return MOTOROLA ? \"jbne %l1\" : \"jne %l1\";
}
CC_STATUS_INIT;
if (GET_CODE (operands[0]) == REG)
{
if (reg_overlap_mentioned_p (operands[2], operands[3]))
{
-#ifdef MOTOROLA
- return \"or%.l %0,%2\;jbne %l1\";
-#else
- return \"or%.l %0,%2\;jne %l1\";
-#endif
+ if (MOTOROLA)
+ return \"or%.l %0,%2\;jbne %l1\";
+ else
+ return \"or%.l %0,%2\;jne %l1\";
}
else
{
-#ifdef MOTOROLA
- return \"or%.l %3,%2\;jbne %l1\";
-#else
- return \"or%.l %3,%2\;jne %l1\";
-#endif
+ if (MOTOROLA)
+ return \"or%.l %3,%2\;jbne %l1\";
+ else
+ return \"or%.l %3,%2\;jne %l1\";
}
}
-#ifdef MOTOROLA
- return \"move%.l %0,%2\;or%.l %3,%2\;jbne %l1\";
-#else
- return \"move%.l %0,%2\;or%.l %3,%2\;jne %l1\";
-#endif
+ if (MOTOROLA)
+ return \"move%.l %0,%2\;or%.l %3,%2\;jbne %l1\";
+ else
+ return \"move%.l %0,%2\;or%.l %3,%2\;jne %l1\";
}
if (TARGET_68020 || TARGET_COLDFIRE)
{
-#ifdef MOTOROLA
- return \"tst%.l %0\;jbne %l1\;tst%.l %3\;jbne %l1\";
-#else
- return \"tst%.l %0\;jne %l1\;tst%.l %3\;jne %l1\";
-#endif
+ if (MOTOROLA)
+ return \"tst%.l %0\;jbne %l1\;tst%.l %3\;jbne %l1\";
+ else
+ return \"tst%.l %0\;jne %l1\;tst%.l %3\;jne %l1\";
}
else
{
-#ifdef MOTOROLA
+ if (MOTOROLA)
#ifdef SGS_CMP_ORDER
- return \"cmp%.w %0,%#0\;jbne %l1\;cmp%.w %3,%#0\;jbne %l1\";
+ return \"cmp%.w %0,%#0\;jbne %l1\;cmp%.w %3,%#0\;jbne %l1\";
#else
- return \"cmp%.w %#0,%0\;jbne %l1\;cmp%.w %#0,%3\;jbne %l1\";
-#endif
-#else
- return \"cmp%.w %#0,%0\;jne %l1\;cmp%.w %#0,%3\;jne %l1\";
+ return \"cmp%.w %#0,%0\;jbne %l1\;cmp%.w %#0,%3\;jbne %l1\";
#endif
+ else
+ return \"cmp%.w %#0,%0\;jne %l1\;cmp%.w %#0,%3\;jne %l1\";
}
} ")
cc_status = cc_prev_status;
if (cc_status.flags & CC_REVERSED)
{
-#ifdef MOTOROLA
- return \"jble %l1\";
-#else
- return \"jle %l1\";
-#endif
+ return MOTOROLA ? \"jble %l1\" : \"jle %l1\";
}
else
{
-#ifdef MOTOROLA
- return \"jbpl %l1\";
-#else
- return \"jpl %l1\";
-#endif
+ return MOTOROLA ? \"jbpl %l1\" : \"jpl %l1\";
}
}
CC_STATUS_INIT;
#endif
}
-#ifdef MOTOROLA
- return \"jbpl %l1\";
-#else
- return \"jpl %l1\";
-#endif
+ return MOTOROLA ? \"jbpl %l1\" : \"jpl %l1\";
} ")
(define_insn "blt0_di"
cc_status = cc_prev_status;
if (cc_status.flags & CC_REVERSED)
{
-#ifdef MOTOROLA
- return \"jbgt %l1\";
-#else
- return \"jgt %l1\";
-#endif
+ return MOTOROLA ? \"jbgt %l1\" : \"jgt %l1\";
}
else
{
-#ifdef MOTOROLA
- return \"jbmi %l1\";
-#else
- return \"jmi %l1\";
-#endif
+ return MOTOROLA ? \"jbmi %l1\" : \"jmi %l1\";
}
}
CC_STATUS_INIT;
#endif
}
-#ifdef MOTOROLA
- return \"jbmi %l1\";
-#else
- return \"jmi %l1\";
-#endif
+ return MOTOROLA ? \"jbmi %l1\" : \"jmi %l1\";
} ")
(define_insn "beq"
""
"*
{
-#ifdef MOTOROLA
- OUTPUT_JUMP (\"jbeq %l0\", \"fbeq %l0\", \"jbeq %l0\");
-#else
- OUTPUT_JUMP (\"jeq %l0\", \"fjeq %l0\", \"jeq %l0\");
-#endif
+ if (MOTOROLA)
+ OUTPUT_JUMP (\"jbeq %l0\", \"fbeq %l0\", \"jbeq %l0\");
+ else
+ OUTPUT_JUMP (\"jeq %l0\", \"fjeq %l0\", \"jeq %l0\");
}")
(define_insn "bne"
""
"*
{
-#ifdef MOTOROLA
- OUTPUT_JUMP (\"jbne %l0\", \"fbne %l0\", \"jbne %l0\");
-#else
- OUTPUT_JUMP (\"jne %l0\", \"fjne %l0\", \"jne %l0\");
-#endif
+ if (MOTOROLA)
+ OUTPUT_JUMP (\"jbne %l0\", \"fbne %l0\", \"jbne %l0\");
+ else
+ OUTPUT_JUMP (\"jne %l0\", \"fjne %l0\", \"jne %l0\");
}")
(define_insn "bgt"
(pc)))]
""
"*
-#ifdef MOTOROLA
- OUTPUT_JUMP (\"jbgt %l0\", \"fbgt %l0\", 0);
-#else
- OUTPUT_JUMP (\"jgt %l0\", \"fjgt %l0\", 0);
-#endif
+ if (MOTOROLA)
+ OUTPUT_JUMP (\"jbgt %l0\", \"fbgt %l0\", 0);
+ else
+ OUTPUT_JUMP (\"jgt %l0\", \"fjgt %l0\", 0);
")
(define_insn "bgtu"
(pc)))]
""
"*
-#ifdef MOTOROLA
- return \"jbhi %l0\";
-#else
- return \"jhi %l0\";
-#endif
+ return MOTOROLA ? \"jbhi %l0\" : \"jhi %l0\";
")
(define_insn "blt"
(pc)))]
""
"*
-#ifdef MOTOROLA
- OUTPUT_JUMP (\"jblt %l0\", \"fblt %l0\", \"jbmi %l0\");
-#else
- OUTPUT_JUMP (\"jlt %l0\", \"fjlt %l0\", \"jmi %l0\");
-#endif
+ if (MOTOROLA)
+ OUTPUT_JUMP (\"jblt %l0\", \"fblt %l0\", \"jbmi %l0\");
+ else
+ OUTPUT_JUMP (\"jlt %l0\", \"fjlt %l0\", \"jmi %l0\");
")
(define_insn "bltu"
(pc)))]
""
"*
-#ifdef MOTOROLA
- return \"jbcs %l0\";
-#else
- return \"jcs %l0\";
-#endif
+ return MOTOROLA ? \"jbcs %l0\" : \"jcs %l0\";
")
(define_insn "bge"
(pc)))]
""
"*
-#ifdef MOTOROLA
- OUTPUT_JUMP (\"jbge %l0\", \"fbge %l0\", \"jbpl %l0\");
-#else
- OUTPUT_JUMP (\"jge %l0\", \"fjge %l0\", \"jpl %l0\");
-#endif
+ if (MOTOROLA)
+ OUTPUT_JUMP (\"jbge %l0\", \"fbge %l0\", \"jbpl %l0\");
+ else
+ OUTPUT_JUMP (\"jge %l0\", \"fjge %l0\", \"jpl %l0\");
")
(define_insn "bgeu"
(pc)))]
""
"*
-#ifdef MOTOROLA
- return \"jbcc %l0\";
-#else
- return \"jcc %l0\";
-#endif
+ return MOTOROLA ? \"jbcc %l0\" : \"jcc %l0\";
")
(define_insn "ble"
(pc)))]
""
"*
-#ifdef MOTOROLA
- OUTPUT_JUMP (\"jble %l0\", \"fble %l0\", 0);
-#else
- OUTPUT_JUMP (\"jle %l0\", \"fjle %l0\", 0);
-#endif
+ if (MOTOROLA)
+ OUTPUT_JUMP (\"jble %l0\", \"fble %l0\", 0);
+ else
+ OUTPUT_JUMP (\"jle %l0\", \"fjle %l0\", 0);
")
(define_insn "bleu"
(pc)))]
""
"*
-#ifdef MOTOROLA
- return \"jbls %l0\";
-#else
- return \"jls %l0\";
-#endif
+ return MOTOROLA ? \"jbls %l0\" : \"jls %l0\";
")
(define_insn "bordered"
{
if (!(cc_prev_status.flags & CC_IN_68881))
abort ();
-#ifdef MOTOROLA
- return "fbor %l0";
-#else
- return "fjor %l0";
-#endif
+ return MOTOROLA ? "fbor %l0" : "fjor %l0";
})
(define_insn "bunordered"
{
if (!(cc_prev_status.flags & CC_IN_68881))
abort ();
-#ifdef MOTOROLA
- return "fbun %l0";
-#else
- return "fjun %l0";
-#endif
+ return MOTOROLA ? "fbun %l0" : "fjun %l0";
})
(define_insn "buneq"
{
if (!(cc_prev_status.flags & CC_IN_68881))
abort ();
-#ifdef MOTOROLA
- return "fbueq %l0";
-#else
- return "fjueq %l0";
-#endif
+ return MOTOROLA ? "fbueq %l0" : "fjueq %l0";
})
(define_insn "bunge"
{
if (!(cc_prev_status.flags & CC_IN_68881))
abort ();
-#ifdef MOTOROLA
- return "fbuge %l0";
-#else
- return "fjuge %l0";
-#endif
+ return MOTOROLA ? "fbuge %l0" : "fjuge %l0";
})
(define_insn "bungt"
{
if (!(cc_prev_status.flags & CC_IN_68881))
abort ();
-#ifdef MOTOROLA
- return "fbugt %l0";
-#else
- return "fjugt %l0";
-#endif
+ return MOTOROLA ? "fbugt %l0" : "fjugt %l0";
})
(define_insn "bunle"
{
if (!(cc_prev_status.flags & CC_IN_68881))
abort ();
-#ifdef MOTOROLA
- return "fbule %l0";
-#else
- return "fjule %l0";
-#endif
+ return MOTOROLA ? "fbule %l0" : "fjule %l0";
})
(define_insn "bunlt"
{
if (!(cc_prev_status.flags & CC_IN_68881))
abort ();
-#ifdef MOTOROLA
- return "fbult %l0";
-#else
- return "fjult %l0";
-#endif
+ return MOTOROLA ? "fbult %l0" : "fjult %l0";
})
(define_insn "bltgt"
{
if (!(cc_prev_status.flags & CC_IN_68881))
abort ();
-#ifdef MOTOROLA
- return "fbogl %l0";
-#else
- return "fjogl %l0";
-#endif
+ return MOTOROLA ? "fbogl %l0" : "fjogl %l0";
})
\f
;; Negated conditional jump instructions.
""
"*
{
-#ifdef MOTOROLA
- OUTPUT_JUMP (\"jbne %l0\", \"fbne %l0\", \"jbne %l0\");
-#else
- OUTPUT_JUMP (\"jne %l0\", \"fjne %l0\", \"jne %l0\");
-#endif
+ if (MOTOROLA)
+ OUTPUT_JUMP (\"jbne %l0\", \"fbne %l0\", \"jbne %l0\");
+ else
+ OUTPUT_JUMP (\"jne %l0\", \"fjne %l0\", \"jne %l0\");
}")
(define_insn ""
""
"*
{
-#ifdef MOTOROLA
- OUTPUT_JUMP (\"jbeq %l0\", \"fbeq %l0\", \"jbeq %l0\");
-#else
- OUTPUT_JUMP (\"jeq %l0\", \"fjeq %l0\", \"jeq %l0\");
-#endif
+ if (MOTOROLA)
+ OUTPUT_JUMP (\"jbeq %l0\", \"fbeq %l0\", \"jbeq %l0\");
+ else
+ OUTPUT_JUMP (\"jeq %l0\", \"fjeq %l0\", \"jeq %l0\");
}")
(define_insn ""
(label_ref (match_operand 0 "" ""))))]
""
"*
-#ifdef MOTOROLA
- OUTPUT_JUMP (\"jble %l0\", \"fbngt %l0\", 0);
-#else
- OUTPUT_JUMP (\"jle %l0\", \"fjngt %l0\", 0);
-#endif
+ if (MOTOROLA)
+ OUTPUT_JUMP (\"jble %l0\", \"fbngt %l0\", 0);
+ else
+ OUTPUT_JUMP (\"jle %l0\", \"fjngt %l0\", 0);
")
(define_insn ""
(label_ref (match_operand 0 "" ""))))]
""
"*
-#ifdef MOTOROLA
- return \"jbls %l0\";
-#else
- return \"jls %l0\";
-#endif
+ return MOTOROLA ? \"jbls %l0\" : \"jls %l0\";
")
(define_insn ""
(label_ref (match_operand 0 "" ""))))]
""
"*
-#ifdef MOTOROLA
- OUTPUT_JUMP (\"jbge %l0\", \"fbnlt %l0\", \"jbpl %l0\");
-#else
- OUTPUT_JUMP (\"jge %l0\", \"fjnlt %l0\", \"jpl %l0\");
-#endif
+ if (MOTOROLA)
+ OUTPUT_JUMP (\"jbge %l0\", \"fbnlt %l0\", \"jbpl %l0\");
+ else
+ OUTPUT_JUMP (\"jge %l0\", \"fjnlt %l0\", \"jpl %l0\");
")
(define_insn ""
(label_ref (match_operand 0 "" ""))))]
""
"*
-#ifdef MOTOROLA
- return \"jbcc %l0\";
-#else
- return \"jcc %l0\";
-#endif
+ return MOTOROLA ? \"jbcc %l0\" : \"jcc %l0\";
")
(define_insn ""
(label_ref (match_operand 0 "" ""))))]
""
"*
-#ifdef MOTOROLA
- OUTPUT_JUMP (\"jblt %l0\", \"fbnge %l0\", \"jbmi %l0\");
-#else
- OUTPUT_JUMP (\"jlt %l0\", \"fjnge %l0\", \"jmi %l0\");
-#endif
+ if (MOTOROLA)
+ OUTPUT_JUMP (\"jblt %l0\", \"fbnge %l0\", \"jbmi %l0\");
+ else
+ OUTPUT_JUMP (\"jlt %l0\", \"fjnge %l0\", \"jmi %l0\");
")
(define_insn ""
(label_ref (match_operand 0 "" ""))))]
""
"*
-#ifdef MOTOROLA
- return \"jbcs %l0\";
-#else
- return \"jcs %l0\";
-#endif
+ return MOTOROLA ? \"jbcs %l0\" : \"jcs %l0\";
")
(define_insn ""
(label_ref (match_operand 0 "" ""))))]
""
"*
-#ifdef MOTOROLA
- OUTPUT_JUMP (\"jbgt %l0\", \"fbnle %l0\", 0);
-#else
- OUTPUT_JUMP (\"jgt %l0\", \"fjnle %l0\", 0);
-#endif
+ if (MOTOROLA)
+ OUTPUT_JUMP (\"jbgt %l0\", \"fbnle %l0\", 0);
+ else
+ OUTPUT_JUMP (\"jgt %l0\", \"fjnle %l0\", 0);
")
(define_insn ""
(label_ref (match_operand 0 "" ""))))]
""
"*
-#ifdef MOTOROLA
- return \"jbhi %l0\";
-#else
- return \"jhi %l0\";
-#endif
+ return MOTOROLA ? \"jbhi %l0\" : \"jhi %l0\";
")
(define_insn "*bordered_rev"
{
if (!(cc_prev_status.flags & CC_IN_68881))
abort ();
-#ifdef MOTOROLA
- return "fbun %l0";
-#else
- return "fjun %l0";
-#endif
+ return MOTOROLA ? "fbun %l0" : "fjun %l0";
})
(define_insn "*bunordered_rev"
{
if (!(cc_prev_status.flags & CC_IN_68881))
abort ();
-#ifdef MOTOROLA
- return "fbor %l0";
-#else
- return "fjor %l0";
-#endif
+ return MOTOROLA ? "fbor %l0" : "fjor %l0";
})
(define_insn "*buneq_rev"
{
if (!(cc_prev_status.flags & CC_IN_68881))
abort ();
-#ifdef MOTOROLA
- return "fbogl %l0";
-#else
- return "fjogl %l0";
-#endif
+ return MOTOROLA ? "fbogl %l0" : "fjogl %l0";
})
(define_insn "*bunge_rev"
{
if (!(cc_prev_status.flags & CC_IN_68881))
abort ();
-#ifdef MOTOROLA
- return "fbolt %l0";
-#else
- return "fjolt %l0";
-#endif
+ return MOTOROLA ? "fbolt %l0" : "fjolt %l0";
})
(define_insn "*bunle_rev"
{
if (!(cc_prev_status.flags & CC_IN_68881))
abort ();
-#ifdef MOTOROLA
- return "fbogt %l0";
-#else
- return "fjogt %l0";
-#endif
+ return MOTOROLA ? "fbogt %l0" : "fjogt %l0";
})
(define_insn "*bunlt_rev"
{
if (!(cc_prev_status.flags & CC_IN_68881))
abort ();
-#ifdef MOTOROLA
- return "fboge %l0";
-#else
- return "fjoge %l0";
-#endif
+ return MOTOROLA ? "fboge %l0" : "fjoge %l0";
})
(define_insn "*bltgt_rev"
{
if (!(cc_prev_status.flags & CC_IN_68881))
abort ();
-#ifdef MOTOROLA
- return "fbueq %l0";
-#else
- return "fjueq %l0";
-#endif
+ return MOTOROLA ? "fbueq %l0" : "fjueq %l0";
})
\f
;; Unconditional and other jump instructions
(label_ref (match_operand 0 "" "")))]
""
"*
-#ifdef MOTOROLA
- return \"jbra %l0\";
-#else
- return \"jra %l0\";
-#endif
+ return MOTOROLA ? \"jbra %l0\" : \"jra %l0\";
")
;; We support two different ways of handling dispatch tables.
(use (label_ref (match_operand 1 "" "")))]
""
"*
-#ifdef MOTOROLA
- return \"jmp (%0)\";
-#else
- return \"jmp %0@\";
-#endif
+ return MOTOROLA ? \"jmp (%0)\" : \"jmp %0@\";
")
;; Jump to variable address from dispatch table of relative addresses.
{
if (ADDRESS_REG_P (operands[0]))
{
-#ifdef MOTOROLA
- return \"jmp (2,pc,%0.l)\";
-#else
- return \"jmp pc@(2,%0:l)\";
-#endif
+ return MOTOROLA ? \"jmp (2,pc,%0.l)\" : \"jmp pc@(2,%0:l)\";
}
+ else if (MOTOROLA)
+ return \"ext%.l %0\;jmp (2,pc,%0.l)\";
else
- {
-#ifdef MOTOROLA
- return \"ext%.l %0\;jmp (2,pc,%0.l)\";
-#else
- return \"extl %0\;jmp pc@(2,%0:l)\";
-#endif
- }
+ return \"extl %0\;jmp pc@(2,%0:l)\";
}
else
{
-#ifdef MOTOROLA
- return \"jmp (2,pc,%0.w)\";
-#else
- return \"jmp pc@(2,%0:w)\";
-#endif
+ return MOTOROLA ? \"jmp (2,pc,%0.w)\" : \"jmp pc@(2,%0:w)\";
}
#endif
#endif
return \"dbra %0,%l1\";
if (GET_CODE (operands[0]) == MEM)
{
-#ifdef MOTOROLA
- return \"subq%.w %#1,%0\;jbcc %l1\";
-#else /* not MOTOROLA */
- return \"subqw %#1,%0\;jcc %l1\";
-#endif
+ if (MOTOROLA)
+ return \"subq%.w %#1,%0\;jbcc %l1\";
+ else
+ return \"subqw %#1,%0\;jcc %l1\";
}
-#ifdef MOTOROLA
+ if (MOTOROLA)
#ifdef SGS_CMP_ORDER
- return \"subq%.w %#1,%0\;cmp%.w %0,%#-1\;jbne %l1\";
+ return \"subq%.w %#1,%0\;cmp%.w %0,%#-1\;jbne %l1\";
#else /* not SGS_CMP_ORDER */
- return \"subq%.w %#1,%0\;cmp%.w %#-1,%0\;jbne %l1\";
-#endif
-#else /* not MOTOROLA */
- return \"subqw %#1,%0\;cmpw %#-1,%0\;jne %l1\";
+ return \"subq%.w %#1,%0\;cmp%.w %#-1,%0\;jbne %l1\";
#endif
+ else
+ return \"subqw %#1,%0\;cmpw %#-1,%0\;jne %l1\";
}")
(define_insn ""
"*
{
CC_STATUS_INIT;
-#ifdef MOTOROLA
- if (DATA_REG_P (operands[0]))
- return \"dbra %0,%l1\;clr%.w %0\;subq%.l %#1,%0\;jbcc %l1\";
- if (GET_CODE (operands[0]) == MEM)
- return \"subq%.l %#1,%0\;jbcc %l1\";
+ if (MOTOROLA)
+ {
+ if (DATA_REG_P (operands[0]))
+ return \"dbra %0,%l1\;clr%.w %0\;subq%.l %#1,%0\;jbcc %l1\";
+ if (GET_CODE (operands[0]) == MEM)
+ return \"subq%.l %#1,%0\;jbcc %l1\";
#ifdef SGS_CMP_ORDER
- return \"subq.l %#1,%0\;cmp.l %0,%#-1\;jbne %l1\";
+ return \"subq.l %#1,%0\;cmp.l %0,%#-1\;jbne %l1\";
#else /* not SGS_CMP_ORDER */
- return \"subq.l %#1,%0\;cmp.l %#-1,%0\;jbne %l1\";
+ return \"subq.l %#1,%0\;cmp.l %#-1,%0\;jbne %l1\";
#endif /* not SGS_CMP_ORDER */
-#else /* not MOTOROLA */
- if (DATA_REG_P (operands[0]))
- return \"dbra %0,%l1\;clr%.w %0\;subql %#1,%0\;jcc %l1\";
- if (GET_CODE (operands[0]) == MEM)
- return \"subql %#1,%0\;jcc %l1\";
- return \"subql %#1,%0\;cmpl %#-1,%0\;jne %l1\";
-#endif /* not MOTOROLA */
+ }
+ else
+ {
+ if (DATA_REG_P (operands[0]))
+ return \"dbra %0,%l1\;clr%.w %0\;subql %#1,%0\;jcc %l1\";
+ if (GET_CODE (operands[0]) == MEM)
+ return \"subql %#1,%0\;jcc %l1\";
+ return \"subql %#1,%0\;cmpl %#-1,%0\;jne %l1\";
+ }
}")
;; Two dbra patterns that use REG_NOTES info generated by strength_reduce.
"*
{
CC_STATUS_INIT;
-#ifdef MOTOROLA
- if (DATA_REG_P (operands[0]))
- return \"dbra %0,%l1\";
- if (GET_CODE (operands[0]) == MEM)
- return \"subq%.w %#1,%0\;jbcc %l1\";
+ if (MOTOROLA)
+ {
+ if (DATA_REG_P (operands[0]))
+ return \"dbra %0,%l1\";
+ if (GET_CODE (operands[0]) == MEM)
+ return \"subq%.w %#1,%0\;jbcc %l1\";
#ifdef SGS_CMP_ORDER
- return \"subq.w %#1,%0\;cmp.w %0,%#-1\;jbne %l1\";
+ return \"subq.w %#1,%0\;cmp.w %0,%#-1\;jbne %l1\";
#else /* not SGS_CMP_ORDER */
- return \"subq.w %#1,%0\;cmp.w %#-1,%0\;jbne %l1\";
+ return \"subq.w %#1,%0\;cmp.w %#-1,%0\;jbne %l1\";
#endif /* not SGS_CMP_ORDER */
-#else /* not MOTOROLA */
- if (DATA_REG_P (operands[0]))
- return \"dbra %0,%l1\";
- if (GET_CODE (operands[0]) == MEM)
- return \"subqw %#1,%0\;jcc %l1\";
- return \"subqw %#1,%0\;cmpw %#-1,%0\;jne %l1\";
-#endif /* not MOTOROLA */
+ }
+ else
+ {
+ if (DATA_REG_P (operands[0]))
+ return \"dbra %0,%l1\";
+ if (GET_CODE (operands[0]) == MEM)
+ return \"subqw %#1,%0\;jcc %l1\";
+ return \"subqw %#1,%0\;cmpw %#-1,%0\;jne %l1\";
+ }
}")
(define_expand "decrement_and_branch_until_zero"
"*
{
CC_STATUS_INIT;
-#ifdef MOTOROLA
- if (DATA_REG_P (operands[0]))
- return \"dbra %0,%l1\;clr%.w %0\;subq%.l %#1,%0\;jbcc %l1\";
- if (GET_CODE (operands[0]) == MEM)
- return \"subq%.l %#1,%0\;jbcc %l1\";
+ if (MOTOROLA)
+ {
+ if (DATA_REG_P (operands[0]))
+ return \"dbra %0,%l1\;clr%.w %0\;subq%.l %#1,%0\;jbcc %l1\";
+ if (GET_CODE (operands[0]) == MEM)
+ return \"subq%.l %#1,%0\;jbcc %l1\";
#ifdef SGS_CMP_ORDER
- return \"subq.l %#1,%0\;cmp.l %0,%#-1\;jbne %l1\";
+ return \"subq.l %#1,%0\;cmp.l %0,%#-1\;jbne %l1\";
#else /* not SGS_CMP_ORDER */
- return \"subq.l %#1,%0\;cmp.l %#-1,%0\;jbne %l1\";
+ return \"subq.l %#1,%0\;cmp.l %#-1,%0\;jbne %l1\";
#endif /* not SGS_CMP_ORDER */
-#else /* not MOTOROLA */
- if (DATA_REG_P (operands[0]))
- return \"dbra %0,%l1\;clr%.w %0\;subql %#1,%0\;jcc %l1\";
- if (GET_CODE (operands[0]) == MEM)
- return \"subql %#1,%0\;jcc %l1\";
- return \"subql %#1,%0\;cmpl %#-1,%0\;jne %l1\";
-#endif /* not MOTOROLA */
+ }
+ else
+ {
+ if (DATA_REG_P (operands[0]))
+ return \"dbra %0,%l1\;clr%.w %0\;subql %#1,%0\;jcc %l1\";
+ if (GET_CODE (operands[0]) == MEM)
+ return \"subql %#1,%0\;jcc %l1\";
+ return \"subql %#1,%0\;cmpl %#-1,%0\;jne %l1\";
+ }
}")
"! flag_pic"
"*
-#if defined (MOTOROLA) && !defined (USE_GAS)
+#if MOTOROLA && !defined (USE_GAS)
return \"jsr %0\";
#else
return \"jbsr %0\";
;; Operand 2 not really used on the m68000.
"! flag_pic"
"*
-#if defined (MOTOROLA) && !defined (USE_GAS)
+#if MOTOROLA && !defined (USE_GAS)
return \"jsr %1\";
#else
return \"jbsr %1\";
&& GET_CODE (XEXP (operands[1], 0)) != PLUS)
{
rtx labelref = XEXP (operands[1], 1);
-#if defined (MOTOROLA) && !defined (SGS_SWITCH_TABLES)
+#if MOTOROLA && !defined (SGS_SWITCH_TABLES)
#ifdef SGS
asm_fprintf (asm_out_file, \"\\tset %LLI%d,.+2\\n\",
CODE_LABEL_NUMBER (XEXP (labelref, 0)));
{
if (TARGET_68040)
output_asm_insn (\"add%.w %1,%0\", xoperands);
- else
-#ifdef MOTOROLA
+ else if (MOTOROLA)
output_asm_insn (\"lea (%c1,%0),%0\", xoperands);
-#else
+ else
output_asm_insn (\"lea %0@(%c1),%0\", xoperands);
-#endif
}
else
output_asm_insn (\"add%.l %1,%0\", xoperands);
{
if (TARGET_68040)
output_asm_insn (\"add%.w %1,%0\", xoperands);
+ else if (MOTOROLA)
+ output_asm_insn (\"lea (%c1,%0),%0\", xoperands);
else
- {
-#ifdef MOTOROLA
- output_asm_insn (\"lea (%c1,%0),%0\", xoperands);
-#else
- output_asm_insn (\"lea %0@(%c1),%0\", xoperands);
-#endif
- }
+ output_asm_insn (\"lea %0@(%c1),%0\", xoperands);
}
else
output_asm_insn (\"add%.l %1,%0\", xoperands);