mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-01 15:37:08 +08:00
m68k.c (output_move_const_into_data_reg, [...]): unify MOTOROLA/MIT handling of moveq
* config/m68k/m68k.c (output_move_const_into_data_reg, output_move_himode): unify MOTOROLA/MIT handling of moveq * config/m68k/m68k.md (movsi_const0, anonymous define_insn): Likewise From-SVN: r70621
This commit is contained in:
parent
c23b0b90ee
commit
0fb8241d37
@ -1,3 +1,10 @@
|
||||
2003-08-20 Gunther Nikl <gni@gecko.de>
|
||||
|
||||
* config/m68k/m68k.c (output_move_const_into_data_reg,
|
||||
output_move_himode): unify MOTOROLA/MIT handling of moveq
|
||||
* config/m68k/m68k.md (movsi_const0, anonymous define_insn):
|
||||
Likewise
|
||||
|
||||
2003-08-20 Gunther Nikl <gni@gecko.de>
|
||||
|
||||
* config/m68k/m68k.c (m68k_output_function_prologue): use %U in
|
||||
|
@ -1604,41 +1604,21 @@ output_move_const_into_data_reg (operands)
|
||||
switch (const_method (operands[1]))
|
||||
{
|
||||
case MOVQ :
|
||||
#if defined (MOTOROLA)
|
||||
return "moveq%.l %1,%0";
|
||||
#else
|
||||
return "moveq %1,%0";
|
||||
#endif
|
||||
case NOTB :
|
||||
operands[1] = GEN_INT (i ^ 0xff);
|
||||
#if defined (MOTOROLA)
|
||||
return "moveq%.l %1,%0\n\tnot%.b %0";
|
||||
#else
|
||||
return "moveq %1,%0\n\tnot%.b %0";
|
||||
#endif
|
||||
case NOTW :
|
||||
operands[1] = GEN_INT (i ^ 0xffff);
|
||||
#if defined (MOTOROLA)
|
||||
return "moveq%.l %1,%0\n\tnot%.w %0";
|
||||
#else
|
||||
return "moveq %1,%0\n\tnot%.w %0";
|
||||
#endif
|
||||
case NEGW :
|
||||
#if defined (MOTOROLA)
|
||||
return "moveq%.l %#-128,%0\n\tneg%.w %0";
|
||||
#else
|
||||
return "moveq %#-128,%0\n\tneg%.w %0";
|
||||
#endif
|
||||
case SWAP :
|
||||
{
|
||||
unsigned u = i;
|
||||
|
||||
operands[1] = GEN_INT ((u << 16) | (u >> 16));
|
||||
#if defined (MOTOROLA)
|
||||
return "moveq%.l %1,%0\n\tswap %0";
|
||||
#else
|
||||
return "moveq %1,%0\n\tswap %0";
|
||||
#endif
|
||||
}
|
||||
case MOVL :
|
||||
return "move%.l %1,%0";
|
||||
@ -1717,11 +1697,7 @@ output_move_himode (operands)
|
||||
&& INTVAL (operands[1]) < 128
|
||||
&& INTVAL (operands[1]) >= -128)
|
||||
{
|
||||
#if defined(MOTOROLA)
|
||||
return "moveq%.l %1,%0";
|
||||
#else
|
||||
return "moveq %1,%0";
|
||||
#endif
|
||||
}
|
||||
else if (INTVAL (operands[1]) < 0x8000
|
||||
&& INTVAL (operands[1]) >= -0x8000)
|
||||
@ -1821,11 +1797,7 @@ output_move_qimode (operands)
|
||||
&& INTVAL (operands[1]) < 128
|
||||
&& INTVAL (operands[1]) >= -128)
|
||||
{
|
||||
#if defined(MOTOROLA)
|
||||
return "moveq%.l %1,%0";
|
||||
#else
|
||||
return "moveq %1,%0";
|
||||
#endif
|
||||
}
|
||||
if (operands[1] == const0_rtx && ADDRESS_REG_P (operands[0]))
|
||||
return "sub%.l %0,%0";
|
||||
|
@ -718,11 +718,7 @@
|
||||
}
|
||||
/* moveq is faster on the 68000. */
|
||||
if (DATA_REG_P (operands[0]) && (!TARGET_68020 && !TARGET_5200))
|
||||
#if defined(MOTOROLA)
|
||||
return \"moveq%.l %#0,%0\";
|
||||
#else
|
||||
return \"moveq %#0,%0\";
|
||||
#endif
|
||||
return \"clr%.l %0\";
|
||||
}")
|
||||
|
||||
@ -932,11 +928,7 @@
|
||||
/* moveq is faster on the 68000. */
|
||||
if (DATA_REG_P (operands[0]) && !(TARGET_68020 || TARGET_5200))
|
||||
{
|
||||
#if defined(MOTOROLA)
|
||||
return \"moveq%.l %#0,%0\";
|
||||
#else
|
||||
return \"moveq %#0,%0\";
|
||||
#endif
|
||||
}
|
||||
return \"clr%.l %0\";
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user