Lines Matching defs:object

139 // Clobbers object, dst, value, and ra, if (ra_status == kRAHasBeenSaved)
140 // The register 'object' contains a heap object pointer. The heap object
142 void MacroAssembler::RecordWriteField(Register object, int offset,
147 DCHECK(!AreAliased(object, value));
157 // Although the object register is tagged, the offset is relative to the start
158 // of the object, so offset must be a multiple of kTaggedSize.
165 DCHECK(!AreAliased(object, value, scratch));
166 Add64(scratch, object, offset - kHeapObjectTag);
173 RecordWrite(object, Operand(offset - kHeapObjectTag), value, ra_status,
189 void TurboAssembler::CallEphemeronKeyBarrier(Register object,
192 DCHECK(!AreAliased(object, slot_address));
194 WriteBarrierDescriptor::ComputeSavedRegisters(object, slot_address);
201 Push(object);
213 Register object, Register slot_address,
216 DCHECK(!AreAliased(object, slot_address));
218 WriteBarrierDescriptor::ComputeSavedRegisters(object, slot_address);
225 Push(object);
237 Register object, Register slot_address,
240 // Use CallRecordWriteStubSaveRegisters if the object and slot registers
242 DCHECK_EQ(WriteBarrierDescriptor::ObjectRegister(), object);
267 // Clobbers object, address, value, and ra, if (ra_status == kRAHasBeenSaved)
268 // The register 'object' contains a heap object pointer. The heap object
270 void MacroAssembler::RecordWrite(Register object, Operand offset,
275 DCHECK(!AreAliased(object, value));
280 DCHECK(!AreAliased(object, value, temp));
281 Add64(temp, object, offset);
312 CheckPageFlag(object,
324 DCHECK(!AreAliased(object, slot_address, value));
327 Add64(slot_address, object, offset);
328 CallRecordWriteStub(object, slot_address, remembered_set_action, fp_mode);
3422 // Note that this assumes the caller code (i.e. the Code object currently
3909 void MacroAssembler::GetObjectType(Register object, Register map,
3911 LoadMap(map, object);
4303 void TurboAssembler::LoadMap(Register destination, Register object) {
4306 FieldMemOperand(object, HeapObject::kMapOffset));
4576 void TurboAssembler::AssertNotSmi(Register object, AbortReason reason) {
4580 DCHECK(object != kScratchReg);
4581 andi(kScratchReg, object, kSmiTagMask);
4586 void TurboAssembler::AssertSmi(Register object, AbortReason reason) {
4590 DCHECK(object != kScratchReg);
4591 andi(kScratchReg, object, kSmiTagMask);
4596 void MacroAssembler::AssertConstructor(Register object) {
4599 DCHECK(object != kScratchReg);
4602 SmiTst(object, kScratchReg);
4606 LoadMap(kScratchReg, object);
4614 void MacroAssembler::AssertFunction(Register object) {
4619 DCHECK(object != kScratchReg);
4620 SmiTst(object, kScratchReg);
4623 push(object);
4624 LoadMap(object, object);
4627 GetInstanceTypeRange(object, object, FIRST_JS_FUNCTION_TYPE, range);
4630 pop(object);
4634 void MacroAssembler::AssertCallableFunction(Register object) {
4638 AssertNotSmi(object, AbortReason::kOperandIsASmiAndNotAFunction);
4639 push(object);
4640 LoadMap(object, object);
4643 GetInstanceTypeRange(object, object, FIRST_CALLABLE_JS_FUNCTION_TYPE, range);
4647 pop(object);
4650 void MacroAssembler::AssertBoundFunction(Register object) {
4655 DCHECK(object != kScratchReg);
4656 SmiTst(object, kScratchReg);
4659 GetObjectType(object, kScratchReg, kScratchReg);
4665 void MacroAssembler::AssertGeneratorObject(Register object) {
4670 DCHECK(object != kScratchReg);
4671 SmiTst(object, kScratchReg);
4675 GetObjectType(object, kScratchReg, kScratchReg);
4693 void MacroAssembler::AssertUndefinedOrAllocationSite(Register object,
4698 AssertNotSmi(object);
4700 BranchShort(&done_checking, eq, object, Operand(scratch));
4701 GetObjectType(object, scratch, scratch);
4944 void TurboAssembler::CheckPageFlag(Register object, Register scratch, int mask,
4946 And(scratch, object, Operand(~kPageAlignmentMask));
5015 // Check whether the Code object is an off-heap trampoline. If so, call its
5017 // trampoline. Otherwise, just call the Code object as always.
5022 // Not an off-heap trampoline object, the entry point is at