Home | History | Annotate | Download | only in x64

Lines Matching defs:rax

278   __ movq(rax, FieldOperand(receiver, JSArray::kLengthOffset));
316 __ movq(rax, FieldOperand(receiver, String::kLengthOffset));
329 __ movq(rax, FieldOperand(scratch2, String::kLengthOffset));
341 if (!result.is(rax)) __ movq(rax, result);
396 __ Set(rax, 5);
695 __ CompareRoot(rax, Heap::kNoInterceptorResultSentinelRootIndex);
754 __ push(rax);
778 __ movq(FieldOperand(receiver_reg, offset), rax);
782 __ movq(name_reg, rax);
790 __ movq(FieldOperand(scratch, offset), rax);
794 __ movq(name_reg, rax);
799 // Return the value (register rax).
974 GenerateFastPropertyLoad(masm(), rax, reg, holder, index);
1032 __ lea(rax, Operand(name_arg, 3 * kPointerSize));
1035 __ movq(StackSpaceOperand(0), rax);
1063 __ LoadHeapObject(rax, value);
1138 __ CompareRoot(rax, Heap::kNoInterceptorResultSentinelRootIndex);
1169 GenerateFastPropertyLoad(masm(), rax, holder_reg,
1239 CheckPrototypes(object, rdx, holder, rbx, rax, rdi, name, miss);
1259 __ CmpObjectType(rdi, JS_FUNCTION_TYPE, rax);
1263 __ Move(rax, Handle<SharedFunctionInfo>(function->shared()));
1264 __ cmpq(FieldOperand(rdi, JSFunction::kSharedFunctionInfoOffset), rax);
1306 Register reg = CheckPrototypes(object, rdx, holder, rbx, rax, rdi,
1366 CheckPrototypes(Handle<JSObject>::cast(object), rdx, holder, rbx, rax, rdi,
1371 __ movq(rax, FieldOperand(rdx, JSArray::kLengthOffset));
1387 // Get the array's length into rax and calculate new length.
1388 __ SmiToInteger32(rax, FieldOperand(rdx, JSArray::kLengthOffset));
1390 __ addl(rax, Immediate(argc));
1396 __ cmpl(rax, rcx);
1404 __ Integer32ToSmiField(FieldOperand(rdx, JSArray::kLengthOffset), rax);
1408 rax,
1413 __ Integer32ToSmi(rax, rax); // Return new length as smi.
1443 __ Integer32ToSmiField(FieldOperand(rdx, JSArray::kLengthOffset), rax);
1447 rax, times_pointer_size,
1454 __ Integer32ToSmi(rax, rax); // Return new length as smi.
1482 rax, times_pointer_size,
1518 __ Integer32ToSmi(rax, rax);
1519 __ movq(FieldOperand(rdx, JSArray::kLengthOffset), rax);
1566 CheckPrototypes(Handle<JSObject>::cast(object), rdx, holder, rbx, rax, rdi,
1584 __ movq(rax, FieldOperand(rbx,
1588 __ cmpq(rax, r9);
1603 __ LoadRoot(rax, Heap::kUndefinedValueRootIndex);
1653 rax,
1657 rax, holder, rbx, rdx, rdi, name, &miss);
1661 Register result = rax;
1684 __ LoadRoot(rax, Heap::kNanValueRootIndex);
1731 rax,
1735 rax, holder, rbx, rdx, rdi, name, &miss);
1737 Register receiver = rax;
1740 Register result = rax;
1764 __ LoadRoot(rax, Heap::kEmptyStringRootIndex);
1803 CheckPrototypes(Handle<JSObject>::cast(object), rdx, holder, rbx, rax, rdi,
1823 StringCharFromCodeGenerator generator(code, rax);
1884 CheckPrototypes(Handle<JSObject>::cast(object), rdx, holder, rbx, rax, rdi,
1892 // Load the (only) argument into rax.
1893 __ movq(rax, Operand(rsp, 1 * kPointerSize));
1898 __ JumpIfNotSmi(rax, &not_smi);
1899 __ SmiToInteger32(rax, rax);
1903 __ movl(rbx, rax);
1907 __ xorl(rax, rbx);
1910 __ subl(rax, rbx);
1918 __ Integer32ToSmi(rax, rax);
1923 __ CheckMap(rax, factory()->heap_number_map(), &slow, DONT_DO_SMI_CHECK);
1924 __ movq(rbx, FieldOperand(rax, HeapNumber::kValueOffset));
1941 __ AllocateHeapNumber(rax, rdx, &slow);
1942 __ movq(FieldOperand(rax, HeapNumber::kValueOffset), rbx);
1999 CheckPrototypes(Handle<JSObject>::cast(object), rdx, holder, rbx, rax, rdi,
2003 __ movq(rax, Operand(rsp, 3 * kPointerSize));
2004 __ movq(Operand(rsp, 0 * kPointerSize), rax);
2064 CheckPrototypes(Handle<JSObject>::cast(object), rdx, holder, rbx, rax,
2078 __ CmpObjectType(rdx, FIRST_NONSTRING_TYPE, rax);
2082 masm(), Context::STRING_FUNCTION_INDEX, rax, &miss);
2085 rax, holder, rbx, rdx, rdi, name, &miss);
2098 __ CmpObjectType(rdx, HEAP_NUMBER_TYPE, rax);
2103 masm(), Context::NUMBER_FUNCTION_INDEX, rax, &miss);
2106 rax, holder, rbx, rdx, rdi, name, &miss);
2125 masm(), Context::BOOLEAN_FUNCTION_INDEX, rax, &miss);
2128 rax, holder, rbx, rdx, rdi, name, &miss);
2177 compiler.Compile(masm(), object, holder, name, &lookup, rdx, rbx, rdi, rax,
2184 __ JumpIfSmi(rax, &miss);
2185 __ CmpObjectType(rax, JS_FUNCTION_TYPE, rbx);
2196 __ movq(rdi, rax);
2280 // -- rax : value
2305 // -- rax : value
2329 __ push(rax); // value
2351 // -- rax : value
2374 __ push(rax); // value
2398 // -- rax : value
2422 __ movq(cell_operand, rax);
2425 // Return the value (register rax).
2446 // -- rax : value
2477 // -- rax : value
2503 // -- rax : value
2540 // -- rax : receiver
2547 __ JumpIfSmi(rax, &miss);
2552 CheckPrototypes(object, rax, last, rbx, rdx, rdi, name, &miss);
2563 __ LoadRoot(rax, Heap::kUndefinedValueRootIndex);
2579 // -- rax : receiver
2585 GenerateLoadField(object, holder, rax, rbx, rdx, rdi, index, name, &miss);
2600 // -- rax : receiver
2605 GenerateLoadCallback(object, holder, rax, rcx, rdx, rbx, rdi, callback,
2620 // -- rax : receiver
2626 GenerateLoadConstant(object, holder, rax, rbx, rdx, rdi, value, name, &miss);
2639 // -- rax : receiver
2649 GenerateLoadInterceptor(receiver, holder, &lookup, rax, rcx, rdx, rbx, rdi,
2666 // -- rax : receiver
2673 __ JumpIfSmi(rax, &miss);
2674 CheckPrototypes(object, rax, holder, rbx, rdx, rdi, name, &miss);
2691 __ movq(rax, rbx);
2708 // -- rax : key
2718 __ Cmp(rax, name);
2738 // -- rax : key
2747 __ Cmp(rax, name);
2750 GenerateLoadCallback(receiver, holder, rdx, rax, rbx, rcx, rdi, callback,
2767 // -- rax : key
2777 __ Cmp(rax, name);
2796 // -- rax : key
2805 __ Cmp(rax, name);
2810 GenerateLoadInterceptor(receiver, holder, &lookup, rdx, rax, rcx, rbx, rdi,
2824 // -- rax : key
2834 __ Cmp(rax, name);
2850 // -- rax : key
2860 __ Cmp(rax, name);
2876 // -- rax : key
2886 __ Cmp(rax, name);
2902 // -- rax : key
2923 // -- rax : key
2952 // -- rax : argc
3004 // rax: argc
3010 __ lea(rcx, Operand(rsp, rax, times_pointer_size, 0));
3012 // rax: argc
3027 __ cmpq(rax, Immediate(arg_number));
3046 // rax: argc
3048 // Move argc to rbx and the JSObject to return to rax and tag it.
3049 __ movq(rbx, rax);
3050 __ movq(rax, rdx);
3051 __ or_(rax, Immediate(kHeapObjectTag));
3053 // rax: JSObject
3082 // -- rax : key
3091 __ JumpIfNotSmi(rax, &miss_force_generic);
3092 __ SmiToInteger32(rbx, rax);
3097 // rax: key
3100 __ LoadFromNumberDictionary(&slow, rcx, rax, rbx, r9, rdi, rax);
3105 // -- rax : key
3115 // -- rax : key
3128 // -- rax : key
3138 __ JumpIfNotSmi(rax, &miss_force_generic);
3142 __ SmiToInteger32(rcx, rax);
3143 __ cmpq(rax, FieldOperand(rbx, ExternalArray::kLengthOffset));
3147 // rax: index (as a smi)
3184 // rax: index
3200 __ Integer32ToSmi(rax, rcx);
3214 __ movq(rax, rcx);
3223 __ movq(rax, rcx);
3226 __ Integer32ToSmi(rax, rcx);
3236 // -- rax : key
3248 // -- rax : key
3262 // -- rax : value
3284 // rax: value
3292 __ JumpIfNotSmi(rax, &slow);
3294 __ JumpIfNotSmi(rax, &check_heap_number, Label::kNear);
3297 __ SmiToInteger32(rdx, rax);
3347 // rax: value
3352 __ CmpObjectType(rax, HEAP_NUMBER_TYPE, kScratchRegister);
3359 __ movsd(xmm0, FieldOperand(rax, HeapNumber::kValueOffset));
3418 // -- rax : value
3431 // -- rax : value
3445 // -- rax : key
3455 __ JumpIfNotSmi(rax, &miss_force_generic);
3462 __ SmiCompare(rax, FieldOperand(rcx, FixedArray::kLengthOffset));
3466 SmiIndex index = masm->SmiToIndex(rbx, rax, kPointerSizeLog2);
3473 __ movq(rax, rbx);
3487 // -- rax : key
3497 __ JumpIfNotSmi(rax, &miss_force_generic);
3504 __ SmiCompare(rax, FieldOperand(rcx, FixedArray::kLengthOffset));
3508 __ SmiToInteger32(kScratchRegister, rax);
3519 __ movq(rax, rcx);
3541 // -- rax : value
3556 __ JumpIfNotSmi(rax, &transition_elements_kind);
3582 rax);
3589 __ movq(Operand(rcx, 0), rax);
3590 // Make sure to preserve the value in register rax.
3591 __ movq(rbx, rax);
3626 // rax: value
3641 __ movq(FieldOperand(rdi, FixedArray::SizeFor(0)), rax);
3658 // rax: value
3683 // -- rax : value
3717 __ StoreNumberToDoubleElements(rax, rdi, rcx, xmm0,
3744 __ JumpIfSmi(rax, &value_is_smi);
3745 __ CompareRoot(FieldOperand(rax, HeapObject::kMapOffset),
3759 // rax: value
3781 // rax: value