Lines Matching defs:eax
47 // -- eax : number of arguments excluding receiver
54 // -- esp[4 * argc] : first argument (argc == eax)
70 // JumpToExternalReference expects eax to contain the number of arguments
72 __ add(eax, Immediate(num_extra_args + 1));
81 // -- eax: number of arguments
93 __ SmiTag(eax);
94 __ push(eax);
114 __ mov(eax, FieldOperand(edi, JSFunction::kPrototypeOrInitialMapOffset));
116 __ JumpIfSmi(eax, &rt_call);
118 // eax: initial map (if proven valid below)
119 __ CmpObjectType(eax, MAP_TYPE, ebx);
126 // eax: initial map
127 __ CmpInstanceType(eax, JS_FUNCTION_TYPE);
138 __ push(eax);
146 __ pop(eax);
153 // eax: initial map
154 __ movzx_b(edi, FieldOperand(eax, Map::kInstanceSizeOffset));
159 // eax: initial map
162 __ mov(Operand(ebx, JSObject::kMapOffset), eax);
168 // eax: initial map
175 FieldOperand(eax, Map::kPreAllocatedPropertyFieldsOffset));
193 // eax: initial map
200 // eax: initial map
204 __ movzx_b(edx, FieldOperand(eax, Map::kUnusedPropertyFieldsOffset));
206 FieldOperand(eax, Map::kPreAllocatedPropertyFieldsOffset));
209 __ movzx_b(ecx, FieldOperand(eax, Map::kInObjectPropertiesOffset));
234 __ mov(eax, factory->fixed_array_map());
235 __ mov(Operand(edi, FixedArray::kMapOffset), eax); // setup the map
245 __ lea(eax, Operand(edi, FixedArray::kHeaderSize));
248 __ mov(Operand(eax, 0), edx);
249 __ add(eax, Immediate(kPointerSize));
251 __ cmp(eax, ecx);
282 __ mov(ebx, eax); // store result in ebx
291 __ mov(eax, Operand(esp, 0));
292 __ SmiUntag(eax);
305 __ mov(ecx, eax);
322 ParameterCount actual(eax);
341 __ JumpIfSmi(eax, &use_receiver);
345 __ CmpObjectType(eax, FIRST_SPEC_OBJECT_TYPE, ecx);
351 __ mov(eax, Operand(esp, 0));
405 __ mov(eax, Operand(ebx, EntryFrameConstants::kArgcOffset));
417 __ cmp(ecx, eax);
422 __ mov(edi, Operand(esp, eax, times_4, kPointerSize));
429 ParameterCount actual(eax);
473 __ lea(eax, FieldOperand(eax, Code::kHeaderSize));
474 __ jmp(eax);
499 __ lea(eax, FieldOperand(eax, Code::kHeaderSize));
500 __ jmp(eax);
527 __ mov(eax, Operand(esp, 2 * kPointerSize));
530 __ ret(2 * kPointerSize); // Remove state, eax.
569 __ test(eax, eax);
574 __ inc(eax);
582 __ mov(edi, Operand(esp, eax, times_4, 1 * kPointerSize));
607 __ mov(ebx, Operand(esp, eax, times_4, 0)); // First argument.
624 __ SmiTag(eax);
625 __ push(eax);
629 __ mov(ebx, eax);
632 __ pop(eax);
633 __ SmiUntag(eax);
637 __ mov(edi, Operand(esp, eax, times_4, 1 * kPointerSize));
651 __ mov(Operand(esp, eax, times_4, 0), ebx);
668 __ mov(Operand(esp, eax, times_4, 0), edi);
675 __ mov(ecx, eax);
682 __ dec(eax); // One fewer argument (first argument is new receiver).
697 __ inc(eax);
720 __ cmp(eax, ebx);
754 __ mov(edx, eax);
762 __ push(eax);
771 __ push(eax); // limit
816 __ mov(ebx, eax);
834 __ mov(eax, Operand(ebp, kIndexOffset));
848 __ push(eax);
850 // Update the index on the stack and in register eax.
851 __ mov(eax, Operand(ebp, kIndexOffset));
852 __ add(eax, Immediate(1 << kSmiTagSize));
853 __ mov(Operand(ebp, kIndexOffset), eax);
856 __ cmp(eax, Operand(ebp, kLimitOffset));
861 ParameterCount actual(eax);
862 __ SmiUntag(eax);
875 __ inc(eax);
1003 ASSERT(!fill_with_hole || !result.is(eax)); // result is never eax
1058 __ mov(eax, factory->the_hole_value());
1083 // eax: argc
1090 // preserved for entering the generic code. In both cases argc in eax needs to
1106 __ push(eax);
1109 __ test(eax, eax);
1116 eax,
1131 __ cmp(eax, 1);
1145 __ mov(eax, Operand(esp, i * kPointerSize));
1146 __ mov(Operand(esp, (i + 1) * kPointerSize), eax);
1172 eax,
1179 __ mov(eax, ebx);
1189 __ SmiTag(eax); // Convet argc to a smi.
1190 // eax: array_size (smi)
1198 eax,
1238 __ mov(eax, Operand(edi, ecx, times_pointer_size, 0));
1240 __ JumpIfNotSmi(eax, &has_non_smi_element);
1242 __ mov(Operand(edx, 0), eax);
1257 __ pop(eax);
1265 __ CheckMap(eax,
1271 __ pop(eax);
1272 __ UndoAllocationInNewSpace(eax);
1283 eax,
1286 __ RecordWriteField(ebx, HeapObject::kMapOffset, edi, eax,
1295 __ mov(eax, Operand(edi, ecx, times_pointer_size, 0));
1296 __ mov(Operand(edx, 0), eax);
1304 __ pop(eax);
1314 // -- eax : argc
1348 // -- eax : argc
1381 // -- eax : argc
1415 // -- eax : number of arguments
1430 // Load the first argument into eax and get rid of the rest
1433 __ test(eax, eax);
1435 __ mov(ebx, Operand(esp, eax, times_pointer_size, 0));
1437 __ lea(esp, Operand(esp, eax, times_pointer_size, kPointerSize));
1439 __ mov(eax, ebx);
1445 eax, // Input.
1459 // Allocate a JSValue and put the tagged pointer into eax.
1462 eax, // Result.
1477 __ mov(FieldOperand(eax, HeapObject::kMapOffset), ecx);
1482 __ mov(FieldOperand(eax, JSObject::kPropertiesOffset), ecx);
1483 __ mov(FieldOperand(eax, JSObject::kElementsOffset), ecx);
1486 __ mov(FieldOperand(eax, JSValue::kValueOffset), ebx);
1499 __ JumpIfSmi(eax, &convert_argument);
1500 Condition is_string = masm->IsObjectStringType(eax, ebx, ecx);
1502 __ mov(ebx, eax);
1512 __ push(eax);
1516 __ mov(ebx, eax);
1551 // Preserve the number of arguments on the stack. Must preserve eax,
1555 __ lea(edi, Operand(eax, eax, times_1, kSmiTag));
1577 // -- eax : actual number of arguments
1587 __ cmp(eax, ebx);
1598 __ lea(eax, Operand(ebp, eax, times_4, offset));
1604 __ push(Operand(eax, 0));
1605 __ sub(eax, Immediate(kPointerSize));
1617 __ lea(edi, Operand(ebp, eax, times_4, offset));
1619 __ sub(ebx, eax);
1620 // eax = -actual - 1
1621 __ neg(eax);
1622 __ sub(eax, Immediate(1));
1626 __ inc(eax);
1629 __ test(eax, eax);
1635 __ inc(eax);
1637 __ cmp(eax, ebx);
1670 // a test(eax, depth) instruction right after the call.
1675 __ Assert(equal, "test eax instruction not found after loop stack check");
1683 __ mov(eax, Operand(ebp, JavaScriptFrameConstants::kFunctionOffset));
1684 __ mov(ecx, FieldOperand(eax, JSFunction::kSharedFunctionInfoOffset));
1693 __ push(eax);
1700 __ cmp(eax, Immediate(Smi::FromInt(-1)));
1723 __ SmiUntag(eax);
1724 __ push(eax);