1
0
mirror of https://github.com/cc65/cc65.git synced 2024-06-25 13:29:41 +00:00

Merge pull request #138 from spiro-trikaliotis/equality-error-uz

Equality problem (Ullrich von Bassewitz)
This commit is contained in:
Oliver Schmidt 2014-10-14 15:15:23 +02:00
commit 1673a40a77

View File

@ -766,8 +766,12 @@ static unsigned Opt_toseqax_tosneax (StackOpData* D, const char* BoolTransformer
InsertEntry (D, X, D->IP++);
/* Lhs load entries can be removed */
D->Lhs.X.Flags |= LI_REMOVE;
D->Lhs.A.Flags |= LI_REMOVE;
if (LoadX->AM != AM65_IMM) {
D->Lhs.X.Flags |= LI_REMOVE;
}
if (LoadA->AM != AM65_IMM) {
D->Lhs.A.Flags |= LI_REMOVE;
}
} else if ((D->Rhs.A.Flags & (LI_DIRECT | LI_RELOAD_Y)) == LI_DIRECT &&
(D->Rhs.X.Flags & (LI_DIRECT | LI_RELOAD_Y)) == LI_DIRECT) {
@ -790,8 +794,12 @@ static unsigned Opt_toseqax_tosneax (StackOpData* D, const char* BoolTransformer
InsertEntry (D, X, D->IP++);
/* Rhs load entries can be removed */
D->Rhs.X.Flags |= LI_REMOVE;
D->Rhs.A.Flags |= LI_REMOVE;
if (LoadX->AM != AM65_IMM) {
D->Rhs.X.Flags |= LI_REMOVE;
}
if (LoadA->AM != AM65_IMM) {
D->Rhs.A.Flags |= LI_REMOVE;
}
} else if ((D->Rhs.A.Flags & LI_DIRECT) != 0 &&
(D->Rhs.X.Flags & LI_DIRECT) != 0) {