mirror of
https://github.com/autc04/Retro68.git
synced 2024-12-26 00:32:02 +00:00
gcc/reload pass: don't eliminate %fp if (%sp)+ is present.
For instructions such as "MOVE (%sp)+, x(%sp)", GCC gets the offset wrong.
This commit is contained in:
parent
cf2a08b7de
commit
1de00c3f09
@ -3038,6 +3038,8 @@ elimination_effects (rtx x, enum machine_mode mem_mode)
|
|||||||
else
|
else
|
||||||
ep->can_eliminate = 0;
|
ep->can_eliminate = 0;
|
||||||
}
|
}
|
||||||
|
if (code == POST_DEC || code == POST_INC)
|
||||||
|
ep->can_eliminate = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* These two aren't unary operators. */
|
/* These two aren't unary operators. */
|
||||||
|
Loading…
Reference in New Issue
Block a user