Lines Matching defs:rdx
56 // -- rdx : new target (preserved for callee)
115 // -- rdx: new target
149 // rdx: new target
150 __ InvokeFunction(rdi, rdx, rax, InvokeType::kCall);
179 // -- rdx: new target
195 __ Push(rdx);
237 __ Pop(rdx);
276 __ InvokeFunction(rdi, rdx, rax, InvokeType::kCall);
566 // while rdi holds the function pointer, rsi the context, and rdx the
571 // rdx : new_target
580 // rdx : function
586 __ Move(rdx, arg_reg_2);
588 // rdx : new_target
625 // rdx : new.target
726 // -- rdx : the JSGeneratorObject to resume
732 FieldOperand(rdx, JSGeneratorObject::kInputOrDebugPosOffset), rax);
734 __ Move(object, rdx);
738 // Check that rdx is still valid, RecordWrite might have clobbered it.
739 __ AssertGeneratorObject(rdx);
745 rdi, FieldOperand(rdx, JSGeneratorObject::kFunctionOffset));
762 __ cmpq(rdx, debug_suspended_generator_operand);
777 // -- rdx : the JSGeneratorObject to resume
789 rbx, FieldOperand(rdx, JSGeneratorObject::kParametersAndRegistersOffset));
804 FieldOperand(rdx, JSGeneratorObject::kReceiverOffset),
846 __ Push(rdx);
851 __ Pop(rdx);
853 rdi, FieldOperand(rdx, JSGeneratorObject::kFunctionOffset));
860 __ Push(rdx);
862 __ Pop(rdx);
864 rdi, FieldOperand(rdx, JSGeneratorObject::kFunctionOffset));
947 // -- rdx : new target (preserved for callee if needed, and caller)
953 DCHECK(!AreAliased(feedback_vector, rdx, rdi, tiering_state));
977 // rdx : new target (preserved for callee if needed, and caller)
983 DCHECK(!AreAliased(rax, rdx, closure, rsi, optimized_code_entry, scratch1,
1168 // o rdx: the incoming new target or generator object
1275 // register, initialize it with incoming value which was passed in rdx.
1283 __ movq(Operand(rbp, rcx, times_system_pointer_size, 0), rdx);
1447 // rbx and rdx will be modified.
1448 GenerateInterpreterPushArgs(masm, rcx, rbx, rdx);
1487 // -- rdx : the new target (either the same as the constructor or
1530 // Jump to the constructor function (rax, rbx, rdx passed on).
1534 // Call the constructor (rax, rdx, rdi passed on).
1539 // Call the constructor (rax, rdx, rdi passed on).
1921 __ LoadRoot(rdx, RootIndex::kUndefinedValue);
1922 __ movq(rbx, rdx);
1927 __ movq(rdx, args[1]);
1934 __ DropArgumentsAndPushNewReceiver(rax, rdx, rcx,
2028 __ movq(rdx, rdi);
2034 __ movq(rdx, args[2]); // thisArgument
2039 __ DropArgumentsAndPushNewReceiver(rax, rdx, rcx,
2071 // new.target into rdx (if present, otherwise use target), remove all
2078 __ movq(rdx, rdi);
2083 __ movq(rdx, rdi); // new.target defaults to target
2088 __ movq(rdx, args[3]); // new.target
2098 // -- rdx : new.target
2174 // -- rdx : new.target (for [[Construct]])
2242 // -- rdx : the new target (for [[Construct]] calls)
2250 __ JumpIfSmi(rdx, &new_target_not_constructor, Label::kNear);
2251 __ LoadMap(rbx, rdx);
2259 __ Push(rdx);
2275 // -- rdx : the new target (for [[Construct]] calls)
2334 rdx, FieldOperand(rdi, JSFunction::kSharedFunctionInfoOffset));
2337 // -- rdx : the shared function info.
2347 __ testl(FieldOperand(rdx, SharedFunctionInfo::kFlagsOffset),
2354 // -- rdx : the shared function info.
2402 rdx, FieldOperand(rdi, JSFunction::kSharedFunctionInfoOffset));
2411 // -- rdx : the shared function info.
2417 rbx, FieldOperand(rdx, SharedFunctionInfo::kFormalParameterCountOffset));
2426 // -- rdx : new.target (only in case of [[Construct]])
2440 // -- rdx : new.target (only in case of [[Construct]])
2533 Register instance_type = rdx;
2605 // -- rdx : the new target (checked to be a constructor)
2631 // -- rdx : the new target (checked to be a constructor)
2643 __ cmpq(rdi, rdx);
2646 rdx, FieldOperand(rdi, JSBoundFunction::kBoundTargetFunctionOffset));
2660 // -- rdx : the new target (either the same as the constructor or
3360 Register param_limit = rdx;
3503 // -- GpParamRegisters = rax, rdx, rcx, rbx, r9
3532 __ movq(rdx, MemOperand(start_int_section, -kSystemPointerSize));
3726 in_param_count = rdx;
3998 Register jmpbuf = rdx;
4019 Register suspender_continuation = rdx;
4040 Register parent = rdx;
4115 Register state = rdx;
4138 kForeignForeignAddressTag, rdx);
4220 // Windows 64-bit ABI passes arguments in rcx, rdx, r8, r9. It requires the
4225 const Register kCCallArg1 = rdx;
4231 // GCC / Clang passes arguments in rdi, rsi, rdx, rcx, r8, r9. Simple results
4232 // are returned in rax, and a struct of two pointers are returned in rax+rdx.
4237 const Register kCCallArg2 = rdx;
4274 // Return result in single register (rax), or a register pair (rax, rdx).
4296 // Result is in rax or rdx:rax - do not destroy these registers!
4488 DCHECK(rdx == function_address || r8 == function_address);
4623 // -- rdx : api function address
4635 Register api_function_address = rdx;
4927 __ leaq(rdx, Operand(rbx, FrameDescription::frame_content_offset()));
4932 __ Pop(Operand(rdx, 0));
4933 __ addq(rdx, Immediate(sizeof(intptr_t)));
4953 // Outer loop state: rax = current FrameDescription**, rdx = one past the
4955 __ movl(rdx, Operand(rax, Deoptimizer::output_count_offset()));
4957 __ leaq(rdx, Operand(rax, rdx, times_system_pointer_size, 0));
4972 __ cmpq(rax, rdx);