mirror of
https://github.com/autc04/Retro68.git
synced 2025-08-09 20:25:29 +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:
@@ -3038,6 +3038,8 @@ elimination_effects (rtx x, enum machine_mode mem_mode)
|
||||
else
|
||||
ep->can_eliminate = 0;
|
||||
}
|
||||
if (code == POST_DEC || code == POST_INC)
|
||||
ep->can_eliminate = 0;
|
||||
}
|
||||
|
||||
/* These two aren't unary operators. */
|
||||
|
Reference in New Issue
Block a user