Lines Matching defs:object

46 #include "src/objects/heap-object.h"
97 Handle<Object> object = isolate()->root_handle(index);
98 if (object->IsSmi()) {
99 mov(destination, Immediate(Smi::cast(*object)));
102 DCHECK(object->IsHeapObject());
103 mov(destination, Handle<HeapObject>::cast(object));
135 Handle<Object> object = isolate()->root_handle(index);
136 if (object->IsHeapObject()) {
137 cmp(with, Handle<HeapObject>::cast(object));
139 cmp(with, Immediate(Smi::cast(*object)));
153 Handle<Object> object = isolate()->root_handle(index);
154 if (object->IsHeapObject()) {
155 Push(Handle<HeapObject>::cast(object));
157 Push(Smi::cast(*object));
246 Operand TurboAssembler::HeapObjectAsOperand(Handle<HeapObject> object) {
251 if (isolate()->roots_table().IsRootHandle(object, &root_index)) {
253 } else if (isolate()->builtins()->IsBuiltinHandle(object, &builtin)) {
255 } else if (object.is_identical_to(code_object_) &&
389 void MacroAssembler::RecordWriteField(Register object, int offset,
404 // Although the object register is tagged, the offset is relative to the start
405 // of the object, so so offset must be a multiple of kTaggedSize.
408 lea(slot_address, FieldOperand(object, offset));
417 RecordWrite(object, slot_address, value, save_fp, remembered_set_action,
442 void TurboAssembler::CallEphemeronKeyBarrier(Register object,
446 DCHECK(!AreAliased(object, slot_address));
448 WriteBarrierDescriptor::ComputeSavedRegisters(object, slot_address);
455 push(object);
468 Register object, Register slot_address,
472 DCHECK(!AreAliased(object, slot_address));
474 WriteBarrierDescriptor::ComputeSavedRegisters(object, slot_address);
481 push(object);
493 Register object, Register slot_address,
497 // Use CallRecordWriteStubSaveRegisters if the object and slot registers
499 DCHECK_EQ(WriteBarrierDescriptor::ObjectRegister(), object);
522 void MacroAssembler::RecordWrite(Register object, Register slot_address,
527 DCHECK(!AreAliased(object, value, slot_address));
528 AssertNotSmi(object);
558 CheckPageFlag(object,
564 CallRecordWriteStub(object, slot_address, remembered_set_action, fp_mode);
710 void TurboAssembler::LoadMap(Register destination, Register object) {
711 mov(destination, FieldOperand(object, HeapObject::kMapOffset));
736 void MacroAssembler::AssertSmi(Register object) {
739 test(object, Immediate(kSmiTagMask));
744 void MacroAssembler::AssertConstructor(Register object) {
747 test(object, Immediate(kSmiTagMask));
749 Push(object);
750 LoadMap(object, object);
751 test_b(FieldOperand(object, Map::kBitFieldOffset),
753 Pop(object);
758 void MacroAssembler::AssertFunction(Register object, Register scratch) {
761 test(object, Immediate(kSmiTagMask));
763 Push(object);
764 LoadMap(object, object);
765 CmpInstanceTypeRange(object, scratch, scratch, FIRST_JS_FUNCTION_TYPE,
767 Pop(object);
772 void MacroAssembler::AssertCallableFunction(Register object, Register scratch) {
775 test(object, Immediate(kSmiTagMask));
777 Push(object);
778 LoadMap(object, object);
779 CmpInstanceTypeRange(object, scratch, scratch,
782 Pop(object);
787 void MacroAssembler::AssertBoundFunction(Register object) {
790 test(object, Immediate(kSmiTagMask));
792 Push(object);
793 CmpObjectType(object, JS_BOUND_FUNCTION_TYPE, object);
794 Pop(object);
799 void MacroAssembler::AssertGeneratorObject(Register object) {
803 test(object, Immediate(kSmiTagMask));
807 Push(object);
808 Register map = object;
810 LoadMap(map, object);
825 Pop(object);
831 void MacroAssembler::AssertUndefinedOrAllocationSite(Register object,
836 AssertNotSmi(object);
837 CompareRoot(object, scratch, RootIndex::kUndefinedValue);
840 cmp(FieldOperand(object, 0), scratch);
846 void MacroAssembler::AssertNotSmi(Register object) {
849 test(object, Immediate(kSmiTagMask));
1926 // Check whether the Code object is an off-heap trampoline. If so, call its
1928 // trampoline. Otherwise, just call the Code object as always.
1996 void TurboAssembler::CheckPageFlag(Register object, Register scratch, int mask,
2001 if (scratch == object) {
2005 and_(scratch, object);