1
0
mirror of https://github.com/cc65/cc65.git synced 2025-01-12 17:30:50 +00:00

Relax the precondition for OPtStackOps somewhat.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4060 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
uz 2009-08-28 09:29:11 +00:00
parent c214fa6395
commit e0643a9f77

View File

@ -1302,9 +1302,6 @@ static int PreCondOk (StackOpData* D)
} else if ((D->UsedRegs & REG_SREG) == REG_NONE) {
D->ZPLo = "sreg";
D->ZPHi = "sreg+1";
} else if ((D->UsedRegs & REG_PTR1) == REG_NONE) {
D->ZPLo = "ptr1";
D->ZPHi = "ptr1+1";
} else if ((D->UsedRegs & REG_PTR2) == REG_NONE) {
D->ZPLo = "ptr2";
D->ZPHi = "ptr2+1";
@ -1418,7 +1415,7 @@ unsigned OptStackOps (CodeSeg* S)
TrackLoads (&Data.Rhs, E, I);
}
} else if (E->Info & OF_STORE) {
} else if (E->Info & OF_STORE && (E->Chg & REG_ZP) == 0) {
/* Too dangerous - there may be a change of a variable
* within the sequence.