Home | History | Annotate | Download | only in ia32

Lines Matching refs:Slot

93         Slot* slot = scope()->parameter(i)->slot();
94 if (slot != NULL && slot->type() == Slot::CONTEXT) {
100 int context_offset = Context::SlotOffset(slot->index());
133 Move(arguments->slot(), eax, ebx, edx);
134 Slot* dot_arguments_slot =
135 scope()->arguments_shadow()->AsVariable()->slot();
249 void FullCodeGenerator::Apply(Expression::Context context, Slot* slot) {
257 MemOperand slot_operand = EmitSlotSearch(slot, result_register());
272 Move(result_register(), slot);
278 Move(result_register(), slot);
625 MemOperand FullCodeGenerator::EmitSlotSearch(Slot* slot, Register scratch) {
626 switch (slot->type()) {
627 case Slot::PARAMETER:
628 case Slot::LOCAL:
629 return Operand(ebp, SlotOffset(slot));
630 case Slot::CONTEXT: {
632 scope()->ContextChainLength(slot->var()->scope());
634 return CodeGenerator::ContextOperand(scratch, slot->index());
636 case Slot::LOOKUP:
644 void FullCodeGenerator::Move(Register destination, Slot* source) {
650 void FullCodeGenerator::Move(Slot* dst,
654 ASSERT(dst->type() != Slot::LOOKUP); // Not yet implemented.
659 if (dst->type() == Slot::CONTEXT) {
670 Slot* slot = var->slot();
673 if (slot != NULL) {
674 switch (slot->type()) {
675 case Slot::PARAMETER:
676 case Slot::LOCAL:
678 __ mov(Operand(ebp, SlotOffset(slot)),
682 __ mov(Operand(ebp, SlotOffset(slot)), result_register());
686 case Slot::CONTEXT:
701 __ mov(CodeGenerator::ContextOperand(esi, slot->index()), eax);
705 __ mov(CodeGenerator::ContextOperand(esi, slot->index()),
707 int offset = Context::SlotOffset(slot->index());
713 case Slot::LOOKUP: {
804 Slot* slot = var->slot();
822 } else if (slot != NULL && slot->type() == Slot::LOOKUP) {
823 Comment cmnt(masm_, "Lookup slot");
829 } else if (slot != NULL) {
830 Comment cmnt(masm_, (slot->type() == Slot::CONTEXT)
831 ? "Context slot"
832 : "Stack slot");
833 Apply(context, slot);
838 // Rewritten parameter accesses are of the form "slot[literal]".
840 // Assert that the object is in a slot.
843 Slot* object_slot = object_var->slot();
1020 // slot. Variables with rewrite to .arguments are treated as KEYED_PROPERTY.
1144 ASSERT(var->is_global() || var->slot() != NULL);
1146 Slot* slot = var->slot();
1159 } else if (slot != NULL && slot->type() == Slot::LOOKUP) {
1166 } else if (slot != NULL) {
1167 switch (slot->type()) {
1168 case Slot::LOCAL:
1169 case Slot::PARAMETER:
1170 __ mov(Operand(ebp, SlotOffset(slot)), result_register());
1173 case Slot::CONTEXT: {
1174 MemOperand target = EmitSlotSearch(slot, ecx);
1179 int offset = FixedArray::kHeaderSize + slot->index() * kPointerSize;
1184 case Slot::LOOKUP:
1343 } else if (var != NULL && var->slot() != NULL &&
1344 var->slot()->type() == Slot::LOOKUP) {
1345 // Call to a lookup slot.
1563 proxy->var()->slot() != NULL &&
1564 proxy->var()->slot()->type() == Slot::LOOKUP) {
1641 // slot. Variables with rewrite to .arguments are treated as KEYED_PROPERTY.