Adding FrameVariable for slotted access.

git-svn-id: svn://10.0.0.236/trunk@141114 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
rogerl%netscape.com
2003-04-14 07:22:21 +00:00
parent 371f05967e
commit 3de4387cb3
7 changed files with 226 additions and 120 deletions

View File

@@ -263,7 +263,16 @@
pc += sizeof(short);
NonWithFrame *f = checked_cast<NonWithFrame *>(meta->env->getTopFrame());
a = pop();
(*f->temps)[slotIndex] = a;
(*f->slots)[slotIndex] = a;
}
break;
case eFrameSlotDelete:
{
uint16 slotIndex = BytecodeContainer::getShort(pc);
pc += sizeof(short);
NonWithFrame *f = checked_cast<NonWithFrame *>(meta->env->getTopFrame());
// XXX some kind of code here?
}
break;
@@ -272,7 +281,7 @@
uint16 slotIndex = BytecodeContainer::getShort(pc);
pc += sizeof(short);
NonWithFrame *f = checked_cast<NonWithFrame *>(meta->env->getTopFrame());
push((*f->temps)[slotIndex]);
push((*f->slots)[slotIndex]);
}
break;