1
0
mirror of https://github.com/cc65/cc65.git synced 2025-02-26 23:30:03 +00:00

Fixed a bug

git-svn-id: svn://svn.cc65.org/cc65/trunk@3663 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
cuz 2005-11-21 20:08:03 +00:00
parent 6d66611108
commit 3c74435ac4

View File

@ -316,7 +316,7 @@ unsigned OptAdd3 (CodeSeg* S)
/* Check for the sequence */ /* Check for the sequence */
if (CE_IsCallTo (L[0], "pushax") && if (CE_IsCallTo (L[0], "pushax") &&
CS_GetEntries (S, L+1, I+1, 4) && CS_GetEntries (S, L+1, I+1, 3) &&
!CS_RangeHasLabel (S, I+1, 3) && !CS_RangeHasLabel (S, I+1, 3) &&
L[1]->OPC == OP65_LDX && L[1]->OPC == OP65_LDX &&
CE_IsKnownImm (L[1], 0) && CE_IsKnownImm (L[1], 0) &&
@ -327,21 +327,21 @@ unsigned OptAdd3 (CodeSeg* S)
CodeLabel* Label; CodeLabel* Label;
/* Insert new code behind the sequence */ /* Insert new code behind the sequence */
X = NewCodeEntry (OP65_CLC, AM65_IMP, 0, 0, L[3]->LI); X = NewCodeEntry (OP65_CLC, AM65_IMP, 0, 0, L[3]->LI);
CS_InsertEntry (S, X, I+4); CS_InsertEntry (S, X, I+4);
/* adc xxx */ /* adc xxx */
X = NewCodeEntry (OP65_ADC, L[2]->AM, L[2]->Arg, 0, L[3]->LI); X = NewCodeEntry (OP65_ADC, L[2]->AM, L[2]->Arg, 0, L[3]->LI);
CS_InsertEntry (S, X, I+5); CS_InsertEntry (S, X, I+5);
/* bcc L1 */ /* bcc L1 */
Label = CS_GenLabel (S, L[4]); Label = CS_GenLabel (S, L[4]);
X = NewCodeEntry (OP65_BCC, AM65_BRA, Label->Name, Label, L[3]->LI); X = NewCodeEntry (OP65_BCC, AM65_BRA, Label->Name, Label, L[3]->LI);
CS_InsertEntry (S, X, I+6); CS_InsertEntry (S, X, I+6);
/* inx */ /* inx */
X = NewCodeEntry (OP65_INX, AM65_IMP, 0, 0, L[3]->LI); X = NewCodeEntry (OP65_INX, AM65_IMP, 0, 0, L[3]->LI);
CS_InsertEntry (S, X, I+7); CS_InsertEntry (S, X, I+7);
/* Delete the old code */ /* Delete the old code */
CS_DelEntries (S, I, 4); CS_DelEntries (S, I, 4);