Home | History | Annotate | Download | only in ia32

Lines Matching defs:eax

25   //  -- eax                : number of arguments excluding receiver
32 // -- esp[4 * argc] : first argument (argc == eax)
48 // JumpToExternalReference expects eax to contain the number of arguments
50 __ add(eax, Immediate(num_extra_args + 1));
70 __ mov(eax, FieldOperand(edi, JSFunction::kSharedFunctionInfoOffset));
71 __ mov(eax, FieldOperand(eax, SharedFunctionInfo::kCodeOffset));
72 __ lea(eax, FieldOperand(eax, Code::kHeaderSize));
73 __ jmp(eax);
78 __ lea(eax, FieldOperand(eax, Code::kHeaderSize));
79 __ jmp(eax);
107 // -- eax: number of arguments
125 __ SmiTag(eax);
126 __ push(eax);
144 __ mov(eax, FieldOperand(edi, JSFunction::kPrototypeOrInitialMapOffset));
146 __ JumpIfSmi(eax, &rt_call);
148 // eax: initial map (if proven valid below)
149 __ CmpObjectType(eax, MAP_TYPE, ebx);
156 // eax: initial map
157 __ CmpInstanceType(eax, JS_FUNCTION_TYPE);
167 __ mov(esi, FieldOperand(eax, Map::kBitField3Offset));
171 __ sub(FieldOperand(eax, Map::kBitField3Offset),
177 __ push(eax);
184 __ pop(eax);
192 // eax: initial map
193 __ movzx_b(edi, FieldOperand(eax, Map::kInstanceSizeOffset));
204 // eax: initial map
207 __ mov(Operand(ebx, JSObject::kMapOffset), eax);
212 // eax: initial map
227 FieldOperand(eax, Map::kPreAllocatedPropertyFieldsOffset));
263 // eax: initial map
270 // eax: initial map
274 __ movzx_b(edx, FieldOperand(eax, Map::kUnusedPropertyFieldsOffset));
276 FieldOperand(eax, Map::kPreAllocatedPropertyFieldsOffset));
279 __ movzx_b(ecx, FieldOperand(eax, Map::kInObjectPropertiesOffset));
305 __ mov(eax, factory->fixed_array_map());
306 __ mov(Operand(edi, FixedArray::kMapOffset), eax); // setup the map
316 __ lea(eax, Operand(edi, FixedArray::kHeaderSize));
319 __ mov(Operand(eax, 0), edx);
320 __ add(eax, Immediate(kPointerSize));
322 __ cmp(eax, ecx);
366 __ mov(ebx, eax); // store result in ebx
395 __ mov(eax, Operand(esp, 0));
396 __ SmiUntag(eax);
409 __ mov(ecx, eax);
424 ParameterCount actual(eax);
443 __ JumpIfSmi(eax, &use_receiver);
447 __ CmpObjectType(eax, FIRST_SPEC_OBJECT_TYPE, ecx);
453 __ mov(eax, Operand(esp, 0));
504 __ mov(eax, Operand(ebx, EntryFrameConstants::kArgcOffset));
516 __ cmp(ecx, eax);
521 __ mov(edi, Operand(esp, eax, times_4, kPointerSize));
530 ParameterCount actual(eax);
598 __ mov(eax, Operand(esp, 8 * kPointerSize));
604 __ mov(Operand(esp, 0), eax);
631 __ mov(eax, Operand(esp, 8 * kPointerSize));
632 __ sub(eax, Immediate(Assembler::kCallInstructionLength));
638 __ mov(Operand(esp, 0), eax);
646 __ pop(eax); // Pop return address into scratch register.
651 __ push(eax); // Push return address after frame prologue.
716 __ mov(eax, Operand(esp, 2 * kPointerSize));
719 __ ret(2 * kPointerSize); // Remove state, eax.
746 __ test(eax, eax);
751 __ inc(eax);
759 __ mov(edi, Operand(esp, eax, times_4, 1 * kPointerSize));
784 __ mov(ebx, Operand(esp, eax, times_4, 0)); // First argument.
801 __ SmiTag(eax);
802 __ push(eax);
806 __ mov(ebx, eax);
809 __ pop(eax);
810 __ SmiUntag(eax);
814 __ mov(edi, Operand(esp, eax, times_4, 1 * kPointerSize));
823 __ mov(Operand(esp, eax, times_4, 0), ebx);
840 __ mov(Operand(esp, eax, times_4, 0), edi);
847 __ mov(ecx, eax);
854 __ dec(eax); // One fewer argument (first argument is new receiver).
869 __ inc(eax);
889 __ cmp(eax, ebx);
922 __ mov(edx, eax);
930 __ push(eax);
939 __ push(eax); // limit
984 __ mov(ebx, eax);
1018 __ push(eax);
1031 ParameterCount actual(eax);
1032 __ Move(eax, key);
1033 __ SmiUntag(eax);
1045 __ inc(eax);
1059 // -- eax : argc
1088 // -- eax : argc
1117 // -- eax : number of arguments
1132 // Load the first argument into eax and get rid of the rest
1135 __ test(eax, eax);
1137 __ mov(ebx, Operand(esp, eax, times_pointer_size, 0));
1139 __ lea(esp, Operand(esp, eax, times_pointer_size, kPointerSize));
1141 __ mov(eax, ebx);
1145 __ LookupNumberStringCache(eax, // Input.
1158 // Allocate a JSValue and put the tagged pointer into eax.
1161 eax, // Result.
1176 __ mov(FieldOperand(eax, HeapObject::kMapOffset), ecx);
1181 __ mov(FieldOperand(eax, JSObject::kPropertiesOffset), ecx);
1182 __ mov(FieldOperand(eax, JSObject::kElementsOffset), ecx);
1185 __ mov(FieldOperand(eax, JSValue::kValueOffset), ebx);
1198 __ JumpIfSmi(eax, &convert_argument);
1199 Condition is_string = masm->IsObjectStringType(eax, ebx, ecx);
1201 __ mov(ebx, eax);
1211 __ push(eax);
1215 __ mov(ebx, eax);
1243 // -- eax : actual number of arguments
1277 // Preserve the number of arguments on the stack. Must preserve eax,
1281 __ lea(edi, Operand(eax, eax, times_1, kSmiTag));
1303 // -- eax : actual number of arguments
1316 __ cmp(eax, ebx);
1327 __ lea(eax, Operand(ebp, eax, times_4, offset));
1333 __ push(Operand(eax, 0));
1334 __ sub(eax, Immediate(kPointerSize));
1346 __ lea(edi, Operand(ebp, eax, times_4, offset));
1348 __ sub(ebx, eax);
1349 // eax = -actual - 1
1350 __ neg(eax);
1351 __ sub(eax, Immediate(1));
1355 __ inc(eax);
1358 __ test(eax, eax);
1364 __ inc(eax);
1366 __ cmp(eax, ebx);
1401 __ mov(eax, Operand(ebp, JavaScriptFrameConstants::kFunctionOffset));
1405 __ push(eax);
1411 __ cmp(eax, Immediate(0));
1418 __ mov(ebx, Operand(eax, Code::kDeoptimizationDataOffset - kHeapObjectTag));
1426 __ lea(eax, Operand(eax, ebx, times_1, Code::kHeaderSize - kHeapObjectTag));
1429 __ mov(Operand(esp, 0), eax);