BROKEN, changing argument allocation strategy

git-svn-id: svn://10.0.0.236/trunk@143650 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
rogerl%netscape.com
2003-06-12 23:02:51 +00:00
parent 667e81fbbc
commit ce5ac8f267
9 changed files with 176 additions and 141 deletions

View File

@@ -1242,10 +1242,10 @@
{
uint16 slotIndex = BytecodeContainer::getShort(pc);
pc += sizeof(short);
ASSERT(parameterSlots && slotIndex < parameterSlots->size());
a = (*parameterSlots)[slotIndex];
ASSERT(parameterSlots && slotIndex < parameterFrame->frameSlots->size());
a = parameterSlots[slotIndex];
float64 num = meta->toFloat64(a);
(*parameterSlots)[slotIndex] = allocNumber(num + 1.0);
parameterSlots[slotIndex] = allocNumber(num + 1.0);
pushNumber(num);
}
break;
@@ -1253,10 +1253,10 @@
{
uint16 slotIndex = BytecodeContainer::getShort(pc);
pc += sizeof(short);
ASSERT(parameterSlots && slotIndex < parameterSlots->size());
a = (*parameterSlots)[slotIndex];
ASSERT(parameterSlots && slotIndex < parameterFrame->frameSlots->size());
a = parameterSlots[slotIndex];
float64 num = meta->toFloat64(a);
(*parameterSlots)[slotIndex] = allocNumber(num - 1.0);
parameterSlots[slotIndex] = allocNumber(num - 1.0);
pushNumber(num);
}
break;
@@ -1264,21 +1264,21 @@
{
uint16 slotIndex = BytecodeContainer::getShort(pc);
pc += sizeof(short);
ASSERT(parameterSlots && slotIndex < parameterSlots->size());
a = (*parameterSlots)[slotIndex];
ASSERT(parameterSlots && slotIndex < parameterFrame->frameSlots->size());
a = parameterSlots[slotIndex];
float64 num = meta->toFloat64(a);
a = pushNumber(num + 1.0);
(*parameterSlots)[slotIndex] = a;
parameterSlots[slotIndex] = a;
}
break;
case eParameterSlotPreDec:
{
uint16 slotIndex = BytecodeContainer::getShort(pc);
pc += sizeof(short);
ASSERT(parameterSlots && slotIndex < parameterSlots->size());
a = (*parameterSlots)[slotIndex];
ASSERT(parameterSlots && slotIndex < parameterFrame->frameSlots->size());
a = parameterSlots[slotIndex];
float64 num = meta->toFloat64(a);
a = pushNumber(num - 1.0);
(*parameterSlots)[slotIndex] = a;
parameterSlots[slotIndex] = a;
}
break;