Home | History | Annotate | Download | only in ia32

Lines Matching refs:edi

640       __ mov(edi, left);
728 // Left was clobbered but a copy is in edi. Right is in ebx for
730 __ mov(eax, edi);
783 // Left was clobbered but a copy is in edi. Right is in ebx for
785 __ mov(edx, edi);
1738 __ AllocateHeapNumber(eax, edi, no_reg, &runtime_call_clear_stack);
1740 __ AllocateHeapNumber(eax, edi, no_reg, &skip_cache);
1787 __ AllocateHeapNumber(eax, edi, no_reg, &skip_cache);
1812 // Only free register is edi.
1823 __ mov(edi, edx);
1824 __ and_(Operand(edi), Immediate(0x7ff00000)); // Exponent only.
1827 __ cmp(Operand(edi), Immediate(supported_exponent_limit));
1830 __ cmp(Operand(edi), Immediate(0x7ff00000));
1845 __ mov(edi, eax); // Save eax before using fnstsw_ax.
1876 __ mov(eax, edi); // Restore eax (allocated HeapNumber pointer).
1902 // Trashes edi and ebx. Dest is ecx. Source cannot be ecx or one of the
1909 ASSERT(!source.is(ecx) && !source.is(edi) && !source.is(ebx));
1912 Register scratch2 = edi;
2481 __ AllocateHeapNumber(ebx, edx, edi, &slow);
2785 __ mov(edi, Operand(esi, Context::SlotOffset(Context::GLOBAL_INDEX)));
2786 __ mov(edi, FieldOperand(edi, GlobalObject::kGlobalContextOffset));
2787 __ mov(edi, Operand(edi,
2792 __ mov(ebx, FieldOperand(edi, i));
2822 __ lea(edi, Operand(eax, GetArgumentsObjectSize()));
2823 __ mov(FieldOperand(eax, JSObject::kElementsOffset), edi);
2824 __ mov(FieldOperand(edi, FixedArray::kMapOffset),
2827 __ mov(FieldOperand(edi, FixedArray::kLengthOffset), ecx);
2835 __ mov(FieldOperand(edi, FixedArray::kHeaderSize), ebx);
2836 __ add(Operand(edi), Immediate(kPointerSize));
3014 __ Set(edi, Immediate(1)); // Type is ascii.
3021 __ Set(edi, Immediate(0)); // Type is two byte.
3032 // edi: encoding of subject string (1 if ascii, 0 if two_byte);
3041 // edi: encoding of subject string (1 if ascii 0 if two_byte);
3070 __ test(edi, Operand(edi));
3071 __ mov(edi, FieldOperand(eax, String::kLengthOffset));
3073 __ SmiUntag(edi);
3074 __ lea(ecx, FieldOperand(eax, edi, times_1, SeqAsciiString::kHeaderSize));
3082 STATIC_ASSERT(kSmiTagSize == 1); // edi is smi (powered by 2).
3083 __ lea(ecx, FieldOperand(eax, edi, times_1, SeqTwoByteString::kHeaderSize));
3172 __ RecordWrite(ecx, RegExpImpl::kLastSubjectOffset, eax, edi);
3176 __ RecordWrite(ecx, RegExpImpl::kLastInputOffset, eax, edi);
3193 __ mov(edi, Operand(ecx, edx, times_int_size, 0));
3194 __ SmiTag(edi);
3200 edi);
3676 edi);
3777 __ CmpObjectType(eax, FIRST_JS_OBJECT_TYPE, edi);
3793 __ mov(edi, Operand(esp, (argc_ + 2) * kPointerSize));
3796 __ test(edi, Immediate(kSmiTagMask));
3799 __ CmpObjectType(edi, JS_FUNCTION_TYPE, ecx);
3804 __ InvokeFunction(edi, actual, JUMP_FUNCTION);
3810 __ mov(Operand(esp, (argc_ + 1) * kPointerSize), edi);
3840 // edi: number of arguments including receiver (C callee-saved)
3867 __ mov(Operand(esp, 0 * kPointerSize), edi); // argc.
3963 // edi: JS function of the caller (C callee-saved)
3976 // edi: number of arguments including receiver (C callee-saved)
4035 __ push(edi);
4122 __ pop(edi);
4135 // 81 ff XX XX XX XX cmp edi, <the hole, patched to a map>
4155 Register prototype = edi; // Prototype of the function.
4660 GenerateConvertArgument(masm, 2 * kPointerSize, eax, ebx, ecx, edi,
4665 GenerateConvertArgument(masm, 1 * kPointerSize, edx, ebx, ecx, edi,
4723 masm, ebx, ecx, eax, edx, edi,
4740 edi, // Scratch 1.
4759 __ mov(edi, FieldOperand(eax, HeapObject::kMapOffset));
4760 __ movzx_b(ecx, FieldOperand(edi, Map::kInstanceTypeOffset));
4761 __ mov(edi, FieldOperand(edx, HeapObject::kMapOffset));
4762 __ movzx_b(edi, FieldOperand(edi, Map::kInstanceTypeOffset));
4763 __ and_(ecx, Operand(edi));
4769 __ AllocateAsciiConsString(ecx, edi, no_reg, &string_add_runtime);
4785 // edi: second instance type.
4790 __ xor_(edi, Operand(ecx));
4792 __ and_(edi, kAsciiStringTag | kAsciiDataHintTag);
4793 __ cmp(edi, kAsciiStringTag | kAsciiDataHintTag);
4796 __ AllocateConsString(ecx, edi, no_reg, &string_add_runtime);
4831 __ AllocateAsciiString(eax, ebx, ecx, edx, edi, &string_add_runtime);
4838 __ mov(edi, FieldOperand(edx, String::kLengthOffset));
4839 __ SmiUntag(edi);
4844 // edi: length of first argument
4845 StringHelper::GenerateCopyCharacters(masm, ecx, edx, edi, ebx, true);
4848 __ mov(edi, FieldOperand(edx, String::kLengthOffset));
4849 __ SmiUntag(edi);
4854 // edi: length of second argument
4855 StringHelper::GenerateCopyCharacters(masm, ecx, edx, edi, ebx, true);
4870 __ AllocateTwoByteString(eax, ebx, ecx, edx, edi, &string_add_runtime);
4878 __ mov(edi, FieldOperand(edx, String::kLengthOffset));
4879 __ SmiUntag(edi);
4885 // edi: length of first argument
4886 StringHelper::GenerateCopyCharacters(masm, ecx, edx, edi, ebx, false);
4889 __ mov(edi, FieldOperand(edx, String::kLengthOffset));
4890 __ SmiUntag(edi);
4895 // edi: length of second argument
4896 StringHelper::GenerateCopyCharacters(masm, ecx, edx, edi, ebx, false);
4991 ASSERT(dest.is(edi)); // rep movs destination
5013 // Copy from edi to esi using rep movs instruction.
5281 masm, ebx, ecx, eax, edx, edi,
5301 __ AllocateAsciiString(eax, ecx, ebx, edx, edi, &runtime);
5307 __ mov(edi, eax);
5308 __ add(Operand(edi), Immediate(SeqAsciiString::kHeaderSize - kHeapObjectTag));
5319 // edi: first character of result
5321 StringHelper::GenerateCopyCharactersREP(masm, edi, esi, ecx, ebx, true);
5336 __ AllocateTwoByteString(eax, ecx, ebx, edx, edi, &runtime);
5342 __ mov(edi, eax);
5343 __ add(Operand(edi),
5359 // edi: first character of result
5361 StringHelper::GenerateCopyCharactersREP(masm, edi, esi, ecx, ebx, false);
5489 GenerateCompareFlatAsciiStrings(masm, edx, eax, ecx, ebx, edi);
5618 __ lea(edi, FieldOperand(eax, Code::kHeaderSize));
5627 __ jmp(Operand(edi));