Lines Matching full:receiver
26 // type: holds the receiver instance type on entry.
43 // The generated code assumes that the receiver has slow properties,
88 // The generated code assumes that the receiver has slow properties,
133 // Checks the receiver for special cases (value type, slow case bits).
136 Register receiver, Register map,
140 __ JumpIfSmi(receiver, slow);
141 // Get the map of the receiver.
142 __ lw(map, FieldMemOperand(receiver, HeapObject::kMapOffset));
159 static void GenerateFastArrayLoad(MacroAssembler* masm, Register receiver,
166 // receiver - holds the receiver on entry.
173 // Allowed to be the the same as 'receiver' or 'key'.
174 // Unchanged on bailout so 'receiver' and 'key' can be safely
179 // elements - holds the elements of the receiver and its prototypes.
187 __ lw(elements, FieldMemOperand(receiver, JSObject::kElementsOffset));
198 __ lw(scratch2, FieldMemOperand(receiver, HeapObject::kMapOffset));
299 Register receiver = LoadDescriptor::ReceiverRegister();
304 __ Push(receiver, name, slot, vector);
370 Register receiver = LoadDescriptor::ReceiverRegister();
372 DCHECK(receiver.is(a1));
382 GenerateKeyedLoadReceiverCheck(masm, receiver, a0, a3,
385 // Check the receiver's map to see if it has fast elements.
388 GenerateFastArrayLoad(masm, receiver, key, a0, a3, t0, v0, &slow,
394 __ lw(t0, FieldMemOperand(receiver, JSObject::kElementsOffset));
406 // Slow case, key and receiver still in a2 and a1.
415 GenerateKeyedLoadReceiverCheck(masm, receiver, a0, a3,
419 // If the receiver
421 __ lw(a3, FieldMemOperand(receiver, JSObject::kPropertiesOffset));
441 receiver, key, t0, t1, t2, t5);
445 // Do a quick inline probe of the receiver's dictionary, if it
449 __ lw(a0, FieldMemOperand(receiver, HeapObject::kMapOffset));
468 Register value, Register key, Register receiver, Register receiver_map,
480 DCHECK(!AreAliased(value, key, receiver, receiver_map, elements_map, elements,
499 __ JumpIfDictionaryInPrototypeChain(receiver, elements_map, scratch, slow);
508 // Add 1 to receiver->length.
510 __ sw(scratch, FieldMemOperand(receiver, JSArray::kLengthOffset));
526 // Add 1 to receiver->length.
528 __ sw(scratch, FieldMemOperand(receiver, JSArray::kLengthOffset));
558 __ JumpIfDictionaryInPrototypeChain(receiver, elements_map, scratch, slow);
564 // Add 1 to receiver->length.
566 __ sw(scratch, FieldMemOperand(receiver, JSArray::kLengthOffset));
582 ElementsTransitionGenerator::GenerateSmiToDouble(masm, receiver, key, value,
584 __ lw(elements, FieldMemOperand(receiver, JSObject::kElementsOffset));
593 masm, receiver, key, value, receiver_map, mode, slow);
594 __ lw(elements, FieldMemOperand(receiver, JSObject::kElementsOffset));
599 // HeapNumber. Make sure that the receiver is a Array with FAST_ELEMENTS and
605 masm, receiver, key, value, receiver_map, mode, slow);
606 __ lw(elements, FieldMemOperand(receiver, JSObject::kElementsOffset));
616 // -- a2 : receiver
626 Register receiver = StoreDescriptor::ReceiverRegister();
630 Register elements = t3; // Elements array of the receiver.
636 __ JumpIfSmi(receiver, &slow);
638 __ lw(receiver_map, FieldMemOperand(receiver, HeapObject::kMapOffset));
639 // Check that the receiver does not require access checks and is not observed.
655 __ lw(elements, FieldMemOperand(receiver, JSObject::kElementsOffset));
665 // a2: receiver.
689 receiver, key, t1, t2, t4, t5);
718 __ lw(elements, FieldMemOperand(receiver, JSObject::kElementsOffset));
721 __ lw(t0, FieldMemOperand(receiver, JSArray::kLengthOffset));
726 value, key, receiver, receiver_map, elements_map, elements);
729 kIncrementLength, value, key, receiver,
753 Register receiver = StoreDescriptor::ReceiverRegister();
755 DCHECK(receiver.is(a1));
759 // Get the receiver from the stack and probe the stub cache.
763 receiver, name, a3, t0, t1, t2);
780 Register receiver = StoreDescriptor::ReceiverRegister();
784 DCHECK(receiver.is(a1));
790 __ lw(dictionary, FieldMemOperand(receiver, JSObject::kPropertiesOffset));