mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-19 18:29:57 +08:00
m68k.md (beq0_di): Generate correct (and more efficient) code when...
* m68k.md (beq0_di): Generate correct (and more efficient) code when the clobbered operand overlaps with an input. (bne0_di): Similarly. From-SVN: r22082
This commit is contained in:
parent
b4ea9a9d44
commit
30b237515d
@ -1,5 +1,9 @@
|
||||
Sat Aug 29 12:39:56 1998 Jeffrey A Law (law@cygnus.com)
|
||||
|
||||
* m68k.md (beq0_di): Generate correct (and more efficient) code when
|
||||
the clobbered operand overlaps with an input.
|
||||
(bne0_di): Similarly.
|
||||
|
||||
* Makefile.in (INSTALL): Remove "--no-header" argument.
|
||||
|
||||
* NEWS: Various updates.
|
||||
|
@ -5958,6 +5958,25 @@
|
||||
operands[3] = adj_offsettable_operand (operands[0], 4);
|
||||
if (! ADDRESS_REG_P (operands[0]))
|
||||
{
|
||||
if (reg_overlap_mentioned_p (operands[2], operands[0]))
|
||||
{
|
||||
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
|
||||
}
|
||||
else
|
||||
{
|
||||
#ifdef MOTOROLA
|
||||
return \"or%.l %3,%2\;jbeq %l1\";
|
||||
#else
|
||||
return \"or%.l %3,%2\;jeq %l1\";
|
||||
#endif
|
||||
}
|
||||
}
|
||||
#ifdef MOTOROLA
|
||||
return \"move%.l %0,%2\;or%.l %3,%2\;jbeq %l1\";
|
||||
#else
|
||||
@ -6019,6 +6038,25 @@
|
||||
operands[3] = adj_offsettable_operand (operands[0], 4);
|
||||
if (!ADDRESS_REG_P (operands[0]))
|
||||
{
|
||||
if (reg_overlap_mentioned_p (operands[2], operands[0]))
|
||||
{
|
||||
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
|
||||
}
|
||||
else
|
||||
{
|
||||
#ifdef MOTOROLA
|
||||
return \"or%.l %3,%2\;jbne %l1\";
|
||||
#else
|
||||
return \"or%.l %3,%2\;jne %l1\";
|
||||
#endif
|
||||
}
|
||||
}
|
||||
#ifdef MOTOROLA
|
||||
return \"move%.l %0,%2\;or%.l %3,%2\;jbne %l1\";
|
||||
#else
|
||||
|
Loading…
Reference in New Issue
Block a user