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,
132 // Checks the receiver for special cases (value type, slow case bits).
135 Register receiver, Register map,
139 __ JumpIfSmi(receiver, slow);
140 // Get the map of the receiver.
141 __ ld(map, FieldMemOperand(receiver, HeapObject::kMapOffset));
158 static void GenerateFastArrayLoad(MacroAssembler* masm, Register receiver,
165 // receiver - holds the receiver on entry.
172 // Allowed to be the the same as 'receiver' or 'key'.
173 // Unchanged on bailout so 'receiver' and 'key' can be safely
178 // elements - holds the elements of the receiver and its prototypes.
186 __ ld(elements, FieldMemOperand(receiver, JSObject::kElementsOffset));
197 __ ld(scratch2, FieldMemOperand(receiver, HeapObject::kMapOffset));
296 Register receiver = LoadDescriptor::ReceiverRegister();
301 __ Push(receiver, name, slot, vector);
367 Register receiver = LoadDescriptor::ReceiverRegister();
369 DCHECK(receiver.is(a1));
379 GenerateKeyedLoadReceiverCheck(masm, receiver, a0, a3,
382 // Check the receiver's map to see if it has fast elements.
385 GenerateFastArrayLoad(masm, receiver, key, a0, a3, a4, v0, &slow,
391 __ ld(a4, FieldMemOperand(receiver, JSObject::kElementsOffset));
403 // Slow case, key and receiver still in a2 and a1.
412 GenerateKeyedLoadReceiverCheck(masm, receiver, a0, a3,
416 // If the receiver is a fast-case object, check the stub cache. Otherwise
418 receiver, JSObject::kPropertiesOffset));
438 receiver, key, a4, a5, a6, t1);
442 // Do a quick inline probe of the receiver's dictionary, if it
446 __ ld(a0, FieldMemOperand(receiver, HeapObject::kMapOffset));
465 Register value, Register key, Register receiver, Register receiver_map,
476 DCHECK(!AreAliased(value, key, receiver, receiver_map, elements_map, elements,
496 __ JumpIfDictionaryInPrototypeChain(receiver, elements_map, scratch, slow);
505 // Add 1 to receiver->length.
507 __ sd(scratch, FieldMemOperand(receiver, JSArray::kLengthOffset));
524 // Add 1 to receiver->length.
526 __ sd(scratch, FieldMemOperand(receiver, JSArray::kLengthOffset));
558 __ JumpIfDictionaryInPrototypeChain(receiver, elements_map, scratch, slow);
564 // Add 1 to receiver->length.
566 __ sd(scratch, FieldMemOperand(receiver, JSArray::kLengthOffset));
582 ElementsTransitionGenerator::GenerateSmiToDouble(masm, receiver, key, value,
584 __ ld(elements, FieldMemOperand(receiver, JSObject::kElementsOffset));
593 masm, receiver, key, value, receiver_map, mode, slow);
594 __ ld(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 __ ld(elements, FieldMemOperand(receiver, JSObject::kElementsOffset));
616 // -- a2 : receiver
626 Register receiver = StoreDescriptor::ReceiverRegister();
630 Register elements = a7; // Elements array of the receiver.
636 __ JumpIfSmi(receiver, &slow);
638 __ ld(receiver_map, FieldMemOperand(receiver, HeapObject::kMapOffset));
639 // Check that the receiver does not require access checks and is not observed.
652 __ ld(elements, FieldMemOperand(receiver, JSObject::kElementsOffset));
662 // a2: receiver.
687 receiver, key, a5, a6, a7, t0);
716 __ ld(elements, FieldMemOperand(receiver, JSObject::kElementsOffset));
719 __ ld(a4, FieldMemOperand(receiver, JSArray::kLengthOffset));
724 value, key, receiver, receiver_map, elements_map, elements);
727 kIncrementLength, value, key, receiver,
751 Register receiver = StoreDescriptor::ReceiverRegister();
753 DCHECK(receiver.is(a1));
757 // Get the receiver from the stack and probe the stub cache.
761 receiver, name, a3, a4, a5, a6);
778 Register receiver = StoreDescriptor::ReceiverRegister();
783 value, receiver, name, VectorStoreICDescriptor::VectorRegister(),
786 __ ld(dictionary, FieldMemOperand(receiver, JSObject::kPropertiesOffset));