Lines Matching refs:CpuRegister

86       : cpu_reg_(CpuRegister(reg)), type_(type), is_div_(is_div) {}  in DivRemMinusOneSlowPathX86_64()
109 const CpuRegister cpu_reg_;
203 __ movl(CpuRegister(calling_convention.GetRegisterAt(0)), Immediate(cls_->GetTypeIndex())); in EmitNativeCode()
250 __ movl(CpuRegister(calling_convention.GetRegisterAt(0)), in EmitNativeCode()
363 CpuRegister temp) { in GenerateStaticOrDirectCall()
408 __ movq(Address(CpuRegister(RSP), stack_index), CpuRegister(reg_id)); in SaveCoreRegister()
413 __ movq(CpuRegister(reg_id), Address(CpuRegister(RSP), stack_index)); in RestoreCoreRegister()
418 __ movsd(Address(CpuRegister(RSP), stack_index), XmmRegister(reg_id)); in SaveFloatingPointRegister()
423 __ movsd(XmmRegister(reg_id), Address(CpuRegister(RSP), stack_index)); in RestoreFloatingPointRegister()
517 __ testq(CpuRegister(RAX), Address( in GenerateFrameEntry()
518 CpuRegister(RSP), -static_cast<int32_t>(GetStackOverflowReservedBytes(kX86_64)))); in GenerateFrameEntry()
529 __ pushq(CpuRegister(reg)); in GenerateFrameEntry()
536 __ subq(CpuRegister(RSP), Immediate(adjust)); in GenerateFrameEntry()
544 __ movsd(Address(CpuRegister(RSP), offset), XmmRegister(kFpuCalleeSaves[i])); in GenerateFrameEntry()
549 __ movq(Address(CpuRegister(RSP), kCurrentMethodStackOffset), CpuRegister(RDI)); in GenerateFrameEntry()
560 __ movsd(XmmRegister(kFpuCalleeSaves[i]), Address(CpuRegister(RSP), offset)); in GenerateFrameExit()
566 __ addq(CpuRegister(RSP), Immediate(adjust)); in GenerateFrameExit()
572 __ popq(CpuRegister(reg)); in GenerateFrameExit()
587 void CodeGeneratorX86_64::LoadCurrentMethod(CpuRegister reg) { in LoadCurrentMethod()
589 __ movq(reg, Address(CpuRegister(RSP), kCurrentMethodStackOffset)); in LoadCurrentMethod()
622 __ movq(destination.AsRegister<CpuRegister>(), source.AsRegister<CpuRegister>()); in Move()
624 __ movd(destination.AsRegister<CpuRegister>(), source.AsFpuRegister<XmmRegister>()); in Move()
626 __ movl(destination.AsRegister<CpuRegister>(), in Move()
627 Address(CpuRegister(RSP), source.GetStackIndex())); in Move()
630 __ movq(destination.AsRegister<CpuRegister>(), in Move()
631 Address(CpuRegister(RSP), source.GetStackIndex())); in Move()
635 __ movd(destination.AsFpuRegister<XmmRegister>(), source.AsRegister<CpuRegister>()); in Move()
640 Address(CpuRegister(RSP), source.GetStackIndex())); in Move()
644 Address(CpuRegister(RSP), source.GetStackIndex())); in Move()
648 __ movl(Address(CpuRegister(RSP), destination.GetStackIndex()), in Move()
649 source.AsRegister<CpuRegister>()); in Move()
651 __ movss(Address(CpuRegister(RSP), destination.GetStackIndex()), in Move()
656 __ movl(Address(CpuRegister(RSP), destination.GetStackIndex()), Immediate(value)); in Move()
659 __ movl(CpuRegister(TMP), Address(CpuRegister(RSP), source.GetStackIndex())); in Move()
660 __ movl(Address(CpuRegister(RSP), destination.GetStackIndex()), CpuRegister(TMP)); in Move()
665 __ movq(Address(CpuRegister(RSP), destination.GetStackIndex()), in Move()
666 source.AsRegister<CpuRegister>()); in Move()
668 __ movsd(Address(CpuRegister(RSP), destination.GetStackIndex()), in Move()
679 Load64BitValue(CpuRegister(TMP), value); in Move()
680 __ movq(Address(CpuRegister(RSP), destination.GetStackIndex()), CpuRegister(TMP)); in Move()
683 __ movq(CpuRegister(TMP), Address(CpuRegister(RSP), source.GetStackIndex())); in Move()
684 __ movq(Address(CpuRegister(RSP), destination.GetStackIndex()), CpuRegister(TMP)); in Move()
702 __ movl(location.AsRegister<CpuRegister>(), imm); in Move()
704 __ movl(Address(CpuRegister(RSP), location.GetStackIndex()), imm); in Move()
712 Load64BitValue(location.AsRegister<CpuRegister>(), value); in Move()
714 Load64BitValue(CpuRegister(TMP), value); in Move()
715 __ movq(Address(CpuRegister(RSP), location.GetStackIndex()), CpuRegister(TMP)); in Move()
828 __ testl(lhs.AsRegister<CpuRegister>(), lhs.AsRegister<CpuRegister>()); in GenerateTestAndBranch()
830 __ cmpl(Address(CpuRegister(RSP), lhs.GetStackIndex()), in GenerateTestAndBranch()
841 __ cmpl(lhs.AsRegister<CpuRegister>(), rhs.AsRegister<CpuRegister>()); in GenerateTestAndBranch()
845 __ testl(lhs.AsRegister<CpuRegister>(), lhs.AsRegister<CpuRegister>()); in GenerateTestAndBranch()
847 __ cmpl(lhs.AsRegister<CpuRegister>(), Immediate(constant)); in GenerateTestAndBranch()
850 __ cmpl(lhs.AsRegister<CpuRegister>(), in GenerateTestAndBranch()
851 Address(CpuRegister(RSP), rhs.GetStackIndex())); in GenerateTestAndBranch()
961 CpuRegister reg = locations->Out().AsRegister<CpuRegister>(); in VisitCondition()
967 __ cmpl(lhs.AsRegister<CpuRegister>(), rhs.AsRegister<CpuRegister>()); in VisitCondition()
971 __ testl(lhs.AsRegister<CpuRegister>(), lhs.AsRegister<CpuRegister>()); in VisitCondition()
973 __ cmpl(lhs.AsRegister<CpuRegister>(), Immediate(constant)); in VisitCondition()
976 __ cmpl(lhs.AsRegister<CpuRegister>(), Address(CpuRegister(RSP), rhs.GetStackIndex())); in VisitCondition()
1054 CpuRegister out = locations->Out().AsRegister<CpuRegister>(); in VisitCompare()
1062 CpuRegister left_reg = left.AsRegister<CpuRegister>(); in VisitCompare()
1076 __ cmpq(left_reg, Address(CpuRegister(RSP), right.GetStackIndex())); in VisitCompare()
1078 __ cmpq(left_reg, right.AsRegister<CpuRegister>()); in VisitCompare()
1088 __ ucomiss(left_reg, Address(CpuRegister(RSP), right.GetStackIndex())); in VisitCompare()
1101 __ ucomisd(left_reg, Address(CpuRegister(RSP), right.GetStackIndex())); in VisitCompare()
1231 DCHECK_EQ(ret->GetLocations()->InAt(0).AsRegister<CpuRegister>().AsRegister(), RAX); in VisitReturn()
1336 invoke->GetLocations()->GetTemp(0).AsRegister<CpuRegister>()); in VisitInvokeStaticOrDirect()
1386 CpuRegister temp = invoke->GetLocations()->GetTemp(0).AsRegister<CpuRegister>(); in VisitInvokeVirtual()
1394 __ movl(temp, Address(CpuRegister(RSP), receiver.GetStackIndex())); in VisitInvokeVirtual()
1397 __ movl(temp, Address(receiver.AsRegister<CpuRegister>(), class_offset)); in VisitInvokeVirtual()
1418 CpuRegister temp = invoke->GetLocations()->GetTemp(0).AsRegister<CpuRegister>(); in VisitInvokeInterface()
1426 CpuRegister hidden_reg = invoke->GetLocations()->GetTemp(1).AsRegister<CpuRegister>(); in VisitInvokeInterface()
1431 __ movl(temp, Address(CpuRegister(RSP), receiver.GetStackIndex())); in VisitInvokeInterface()
1434 __ movl(temp, Address(receiver.AsRegister<CpuRegister>(), class_offset)); in VisitInvokeInterface()
1477 __ negl(out.AsRegister<CpuRegister>()); in VisitNeg()
1483 __ negq(out.AsRegister<CpuRegister>()); in VisitNeg()
1726 __ movsxb(out.AsRegister<CpuRegister>(), in.AsRegister<CpuRegister>()); in VisitTypeConversion()
1728 __ movsxb(out.AsRegister<CpuRegister>(), in VisitTypeConversion()
1729 Address(CpuRegister(RSP), in.GetStackIndex())); in VisitTypeConversion()
1732 __ movl(out.AsRegister<CpuRegister>(), in VisitTypeConversion()
1752 __ movsxw(out.AsRegister<CpuRegister>(), in.AsRegister<CpuRegister>()); in VisitTypeConversion()
1754 __ movsxw(out.AsRegister<CpuRegister>(), in VisitTypeConversion()
1755 Address(CpuRegister(RSP), in.GetStackIndex())); in VisitTypeConversion()
1758 __ movl(out.AsRegister<CpuRegister>(), in VisitTypeConversion()
1774 __ movl(out.AsRegister<CpuRegister>(), in.AsRegister<CpuRegister>()); in VisitTypeConversion()
1776 __ movl(out.AsRegister<CpuRegister>(), in VisitTypeConversion()
1777 Address(CpuRegister(RSP), in.GetStackIndex())); in VisitTypeConversion()
1782 __ movl(out.AsRegister<CpuRegister>(), Immediate(static_cast<int32_t>(value))); in VisitTypeConversion()
1789 CpuRegister output = out.AsRegister<CpuRegister>(); in VisitTypeConversion()
1814 CpuRegister output = out.AsRegister<CpuRegister>(); in VisitTypeConversion()
1853 __ movsxd(out.AsRegister<CpuRegister>(), in.AsRegister<CpuRegister>()); in VisitTypeConversion()
1859 CpuRegister output = out.AsRegister<CpuRegister>(); in VisitTypeConversion()
1884 CpuRegister output = out.AsRegister<CpuRegister>(); in VisitTypeConversion()
1921 __ movzxw(out.AsRegister<CpuRegister>(), in.AsRegister<CpuRegister>()); in VisitTypeConversion()
1923 __ movzxw(out.AsRegister<CpuRegister>(), in VisitTypeConversion()
1924 Address(CpuRegister(RSP), in.GetStackIndex())); in VisitTypeConversion()
1927 __ movl(out.AsRegister<CpuRegister>(), in VisitTypeConversion()
1948 __ cvtsi2ss(out.AsFpuRegister<XmmRegister>(), in.AsRegister<CpuRegister>(), false); in VisitTypeConversion()
1959 Address(CpuRegister(RSP), in.GetStackIndex()), false); in VisitTypeConversion()
1966 __ cvtsi2ss(out.AsFpuRegister<XmmRegister>(), in.AsRegister<CpuRegister>(), true); in VisitTypeConversion()
1977 Address(CpuRegister(RSP), in.GetStackIndex()), true); in VisitTypeConversion()
1995 Address(CpuRegister(RSP), in.GetStackIndex())); in VisitTypeConversion()
2015 __ cvtsi2sd(out.AsFpuRegister<XmmRegister>(), in.AsRegister<CpuRegister>(), false); in VisitTypeConversion()
2026 Address(CpuRegister(RSP), in.GetStackIndex()), false); in VisitTypeConversion()
2033 __ cvtsi2sd(out.AsFpuRegister<XmmRegister>(), in.AsRegister<CpuRegister>(), true); in VisitTypeConversion()
2044 Address(CpuRegister(RSP), in.GetStackIndex()), true); in VisitTypeConversion()
2062 Address(CpuRegister(RSP), in.GetStackIndex())); in VisitTypeConversion()
2120 __ addl(out.AsRegister<CpuRegister>(), second.AsRegister<CpuRegister>()); in VisitAdd()
2122 __ leal(out.AsRegister<CpuRegister>(), Address( in VisitAdd()
2123 first.AsRegister<CpuRegister>(), second.AsRegister<CpuRegister>(), TIMES_1, 0)); in VisitAdd()
2127 __ addl(out.AsRegister<CpuRegister>(), in VisitAdd()
2130 __ leal(out.AsRegister<CpuRegister>(), Address( in VisitAdd()
2131 first.AsRegister<CpuRegister>(), second.GetConstant()->AsIntConstant()->GetValue())); in VisitAdd()
2135 __ addl(first.AsRegister<CpuRegister>(), Address(CpuRegister(RSP), second.GetStackIndex())); in VisitAdd()
2143 __ addq(out.AsRegister<CpuRegister>(), second.AsRegister<CpuRegister>()); in VisitAdd()
2145 __ leaq(out.AsRegister<CpuRegister>(), Address( in VisitAdd()
2146 first.AsRegister<CpuRegister>(), second.AsRegister<CpuRegister>(), TIMES_1, 0)); in VisitAdd()
2154 __ addq(out.AsRegister<CpuRegister>(), Immediate(int32_value)); in VisitAdd()
2156 __ leaq(out.AsRegister<CpuRegister>(), Address( in VisitAdd()
2157 first.AsRegister<CpuRegister>(), int32_value)); in VisitAdd()
2172 Address(CpuRegister(RSP), second.GetStackIndex())); in VisitAdd()
2186 Address(CpuRegister(RSP), second.GetStackIndex())); in VisitAdd()
2232 __ subl(first.AsRegister<CpuRegister>(), second.AsRegister<CpuRegister>()); in VisitSub()
2235 __ subl(first.AsRegister<CpuRegister>(), imm); in VisitSub()
2237 __ subl(first.AsRegister<CpuRegister>(), Address(CpuRegister(RSP), second.GetStackIndex())); in VisitSub()
2245 __ subq(first.AsRegister<CpuRegister>(), Immediate(static_cast<int32_t>(value))); in VisitSub()
2247 __ subq(first.AsRegister<CpuRegister>(), second.AsRegister<CpuRegister>()); in VisitSub()
2261 Address(CpuRegister(RSP), second.GetStackIndex())); in VisitSub()
2275 Address(CpuRegister(RSP), second.GetStackIndex())); in VisitSub()
2327 __ imull(first.AsRegister<CpuRegister>(), second.AsRegister<CpuRegister>()); in VisitMul()
2330 __ imull(first.AsRegister<CpuRegister>(), imm); in VisitMul()
2333 __ imull(first.AsRegister<CpuRegister>(), in VisitMul()
2334 Address(CpuRegister(RSP), second.GetStackIndex())); in VisitMul()
2342 __ imulq(locations->Out().AsRegister<CpuRegister>(), in VisitMul()
2343 first.AsRegister<CpuRegister>(), in VisitMul()
2347 __ imulq(first.AsRegister<CpuRegister>(), second.AsRegister<CpuRegister>()); in VisitMul()
2362 Address(CpuRegister(RSP), second.GetStackIndex())); in VisitMul()
2377 Address(CpuRegister(RSP), second.GetStackIndex())); in VisitMul()
2391 __ flds(Address(CpuRegister(RSP), source.GetStackIndex() + stack_adjustment)); in PushOntoFPStack()
2394 __ fldl(Address(CpuRegister(RSP), source.GetStackIndex() + stack_adjustment)); in PushOntoFPStack()
2400 __ flds(Address(CpuRegister(RSP), temp_offset)); in PushOntoFPStack()
2404 __ fldl(Address(CpuRegister(RSP), temp_offset)); in PushOntoFPStack()
2420 __ subq(CpuRegister(RSP), Immediate(2 * elem_size)); in GenerateRemFP()
2436 __ andl(CpuRegister(RAX), Immediate(kC2ConditionMask)); in GenerateRemFP()
2442 __ fsts(Address(CpuRegister(RSP), 0)); in GenerateRemFP()
2444 __ fstl(Address(CpuRegister(RSP), 0)); in GenerateRemFP()
2453 __ movss(out.AsFpuRegister<XmmRegister>(), Address(CpuRegister(RSP), 0)); in GenerateRemFP()
2455 __ movsd(out.AsFpuRegister<XmmRegister>(), Address(CpuRegister(RSP), 0)); in GenerateRemFP()
2459 __ addq(CpuRegister(RSP), Immediate(2 * elem_size)); in GenerateRemFP()
2469 CpuRegister output_register = locations->Out().AsRegister<CpuRegister>(); in DivRemOneOrMinusOne()
2470 CpuRegister input_register = locations->InAt(0).AsRegister<CpuRegister>(); in DivRemOneOrMinusOne()
2509 CpuRegister output_register = locations->Out().AsRegister<CpuRegister>(); in DivByPowerOfTwo()
2510 CpuRegister numerator = locations->InAt(0).AsRegister<CpuRegister>(); in DivByPowerOfTwo()
2516 CpuRegister tmp = locations->GetTemp(0).AsRegister<CpuRegister>(); in DivByPowerOfTwo()
2532 CpuRegister rdx = locations->GetTemp(0).AsRegister<CpuRegister>(); in DivByPowerOfTwo()
2555 CpuRegister numerator = instruction->IsDiv() ? locations->GetTemp(1).AsRegister<CpuRegister>() in GenerateDivRemWithAnyConstant()
2556 : locations->GetTemp(0).AsRegister<CpuRegister>(); in GenerateDivRemWithAnyConstant()
2557 CpuRegister eax = locations->InAt(0).AsRegister<CpuRegister>(); in GenerateDivRemWithAnyConstant()
2558 CpuRegister edx = instruction->IsDiv() ? locations->GetTemp(0).AsRegister<CpuRegister>() in GenerateDivRemWithAnyConstant()
2559 : locations->Out().AsRegister<CpuRegister>(); in GenerateDivRemWithAnyConstant()
2560 CpuRegister out = locations->Out().AsRegister<CpuRegister>(); in GenerateDivRemWithAnyConstant()
2622 CpuRegister rax = eax; in GenerateDivRemWithAnyConstant()
2623 CpuRegister rdx = edx; in GenerateDivRemWithAnyConstant()
2679 CpuRegister out = locations->Out().AsRegister<CpuRegister>(); in GenerateDivRemIntegral()
2682 DCHECK_EQ(RAX, locations->InAt(0).AsRegister<CpuRegister>().AsRegister()); in GenerateDivRemIntegral()
2704 CpuRegister second_reg = second.AsRegister<CpuRegister>(); in GenerateDivRemIntegral()
2783 Address(CpuRegister(RSP), second.GetStackIndex())); in VisitDiv()
2797 Address(CpuRegister(RSP), second.GetStackIndex())); in VisitDiv()
2880 __ testl(value.AsRegister<CpuRegister>(), value.AsRegister<CpuRegister>()); in VisitDivZeroCheck()
2883 __ cmpl(Address(CpuRegister(RSP), value.GetStackIndex()), Immediate(0)); in VisitDivZeroCheck()
2895 __ testq(value.AsRegister<CpuRegister>(), value.AsRegister<CpuRegister>()); in VisitDivZeroCheck()
2898 __ cmpq(Address(CpuRegister(RSP), value.GetStackIndex()), Immediate(0)); in VisitDivZeroCheck()
2937 CpuRegister first_reg = locations->InAt(0).AsRegister<CpuRegister>(); in HandleShift()
2943 CpuRegister second_reg = second.AsRegister<CpuRegister>(); in HandleShift()
2965 CpuRegister second_reg = second.AsRegister<CpuRegister>(); in HandleShift()
3025 codegen_->LoadCurrentMethod(CpuRegister(calling_convention.GetRegisterAt(1))); in VisitNewInstance()
3026 codegen_->Load64BitValue(CpuRegister(calling_convention.GetRegisterAt(0)), in VisitNewInstance()
3047 codegen_->LoadCurrentMethod(CpuRegister(calling_convention.GetRegisterAt(2))); in VisitNewArray()
3048 codegen_->Load64BitValue(CpuRegister(calling_convention.GetRegisterAt(0)), in VisitNewArray()
3084 DCHECK_EQ(locations->InAt(0).AsRegister<CpuRegister>().AsRegister(), in VisitNot()
3085 locations->Out().AsRegister<CpuRegister>().AsRegister()); in VisitNot()
3089 __ notl(out.AsRegister<CpuRegister>()); in VisitNot()
3093 __ notq(out.AsRegister<CpuRegister>()); in VisitNot()
3110 DCHECK_EQ(locations->InAt(0).AsRegister<CpuRegister>().AsRegister(), in VisitBooleanNot()
3111 locations->Out().AsRegister<CpuRegister>().AsRegister()); in VisitBooleanNot()
3113 __ xorl(out.AsRegister<CpuRegister>(), Immediate(1)); in VisitBooleanNot()
3170 CpuRegister base = locations->InAt(0).AsRegister<CpuRegister>(); in HandleFieldGet()
3178 __ movzxb(out.AsRegister<CpuRegister>(), Address(base, offset)); in HandleFieldGet()
3183 __ movsxb(out.AsRegister<CpuRegister>(), Address(base, offset)); in HandleFieldGet()
3188 __ movsxw(out.AsRegister<CpuRegister>(), Address(base, offset)); in HandleFieldGet()
3193 __ movzxw(out.AsRegister<CpuRegister>(), Address(base, offset)); in HandleFieldGet()
3199 __ movl(out.AsRegister<CpuRegister>(), Address(base, offset)); in HandleFieldGet()
3204 __ movq(out.AsRegister<CpuRegister>(), Address(base, offset)); in HandleFieldGet()
3257 CpuRegister base = locations->InAt(0).AsRegister<CpuRegister>(); in HandleFieldSet()
3274 __ movb(Address(base, offset), value.AsRegister<CpuRegister>()); in HandleFieldSet()
3285 __ movw(Address(base, offset), value.AsRegister<CpuRegister>()); in HandleFieldSet()
3296 __ movl(Address(base, offset), value.AsRegister<CpuRegister>()); in HandleFieldSet()
3308 __ movq(Address(base, offset), value.AsRegister<CpuRegister>()); in HandleFieldSet()
3331 CpuRegister temp = locations->GetTemp(0).AsRegister<CpuRegister>(); in HandleFieldSet()
3332 CpuRegister card = locations->GetTemp(1).AsRegister<CpuRegister>(); in HandleFieldSet()
3333 codegen_->MarkGCCard(temp, card, base, value.AsRegister<CpuRegister>()); in HandleFieldSet()
3392 __ testl(CpuRegister(RAX), Address(obj.AsRegister<CpuRegister>(), 0)); in GenerateImplicitNullCheck()
3404 __ testl(obj.AsRegister<CpuRegister>(), obj.AsRegister<CpuRegister>()); in GenerateExplicitNullCheck()
3406 __ cmpl(Address(CpuRegister(RSP), obj.GetStackIndex()), Immediate(0)); in GenerateExplicitNullCheck()
3438 CpuRegister obj = locations->InAt(0).AsRegister<CpuRegister>(); in VisitArrayGet()
3444 CpuRegister out = locations->Out().AsRegister<CpuRegister>(); in VisitArrayGet()
3449 __ movzxb(out, Address(obj, index.AsRegister<CpuRegister>(), TIMES_1, data_offset)); in VisitArrayGet()
3456 CpuRegister out = locations->Out().AsRegister<CpuRegister>(); in VisitArrayGet()
3461 __ movsxb(out, Address(obj, index.AsRegister<CpuRegister>(), TIMES_1, data_offset)); in VisitArrayGet()
3468 CpuRegister out = locations->Out().AsRegister<CpuRegister>(); in VisitArrayGet()
3473 __ movsxw(out, Address(obj, index.AsRegister<CpuRegister>(), TIMES_2, data_offset)); in VisitArrayGet()
3480 CpuRegister out = locations->Out().AsRegister<CpuRegister>(); in VisitArrayGet()
3485 __ movzxw(out, Address(obj, index.AsRegister<CpuRegister>(), TIMES_2, data_offset)); in VisitArrayGet()
3494 CpuRegister out = locations->Out().AsRegister<CpuRegister>(); in VisitArrayGet()
3499 __ movl(out, Address(obj, index.AsRegister<CpuRegister>(), TIMES_4, data_offset)); in VisitArrayGet()
3506 CpuRegister out = locations->Out().AsRegister<CpuRegister>(); in VisitArrayGet()
3511 __ movq(out, Address(obj, index.AsRegister<CpuRegister>(), TIMES_8, data_offset)); in VisitArrayGet()
3523 __ movss(out, Address(obj, index.AsRegister<CpuRegister>(), TIMES_4, data_offset)); in VisitArrayGet()
3535 __ movsd(out, Address(obj, index.AsRegister<CpuRegister>(), TIMES_8, data_offset)); in VisitArrayGet()
3584 CpuRegister obj = locations->InAt(0).AsRegister<CpuRegister>(); in VisitArraySet()
3599 __ movb(Address(obj, offset), value.AsRegister<CpuRegister>()); in VisitArraySet()
3606 __ movb(Address(obj, index.AsRegister<CpuRegister>(), TIMES_1, data_offset), in VisitArraySet()
3607 value.AsRegister<CpuRegister>()); in VisitArraySet()
3609 __ movb(Address(obj, index.AsRegister<CpuRegister>(), TIMES_1, data_offset), in VisitArraySet()
3623 __ movw(Address(obj, offset), value.AsRegister<CpuRegister>()); in VisitArraySet()
3632 __ movw(Address(obj, index.AsRegister<CpuRegister>(), TIMES_2, data_offset), in VisitArraySet()
3633 value.AsRegister<CpuRegister>()); in VisitArraySet()
3636 __ movw(Address(obj, index.AsRegister<CpuRegister>(), TIMES_2, data_offset), in VisitArraySet()
3652 __ movl(Address(obj, offset), value.AsRegister<CpuRegister>()); in VisitArraySet()
3661 __ movl(Address(obj, index.AsRegister<CpuRegister>(), TIMES_4, data_offset), in VisitArraySet()
3662 value.AsRegister<CpuRegister>()); in VisitArraySet()
3666 __ movl(Address(obj, index.AsRegister<CpuRegister>(), TIMES_4, data_offset), in VisitArraySet()
3673 CpuRegister temp = locations->GetTemp(0).AsRegister<CpuRegister>(); in VisitArraySet()
3674 CpuRegister card = locations->GetTemp(1).AsRegister<CpuRegister>(); in VisitArraySet()
3675 codegen_->MarkGCCard(temp, card, obj, value.AsRegister<CpuRegister>()); in VisitArraySet()
3692 __ movq(Address(obj, offset), value.AsRegister<CpuRegister>()); in VisitArraySet()
3701 __ movq(Address(obj, index.AsRegister<CpuRegister>(), TIMES_8, data_offset), in VisitArraySet()
3702 value.AsRegister<CpuRegister>()); in VisitArraySet()
3707 __ movq(Address(obj, index.AsRegister<CpuRegister>(), TIMES_8, data_offset), in VisitArraySet()
3723 __ movss(Address(obj, index.AsRegister<CpuRegister>(), TIMES_4, data_offset), in VisitArraySet()
3738 __ movsd(Address(obj, index.AsRegister<CpuRegister>(), TIMES_8, data_offset), in VisitArraySet()
3761 CpuRegister obj = locations->InAt(0).AsRegister<CpuRegister>(); in VisitArrayLength()
3762 CpuRegister out = locations->Out().AsRegister<CpuRegister>(); in VisitArrayLength()
3800 CpuRegister index_reg = index_loc.AsRegister<CpuRegister>(); in VisitBoundsCheck()
3805 CpuRegister length = length_loc.AsRegister<CpuRegister>(); in VisitBoundsCheck()
3810 __ cmpl(length, index_loc.AsRegister<CpuRegister>()); in VisitBoundsCheck()
3817 void CodeGeneratorX86_64::MarkGCCard(CpuRegister temp, in MarkGCCard()
3818 CpuRegister card, in MarkGCCard()
3819 CpuRegister object, in MarkGCCard()
3820 CpuRegister value) { in MarkGCCard()
3906 __ movq(destination.AsRegister<CpuRegister>(), source.AsRegister<CpuRegister>()); in EmitMove()
3908 __ movl(Address(CpuRegister(RSP), destination.GetStackIndex()), in EmitMove()
3909 source.AsRegister<CpuRegister>()); in EmitMove()
3912 __ movq(Address(CpuRegister(RSP), destination.GetStackIndex()), in EmitMove()
3913 source.AsRegister<CpuRegister>()); in EmitMove()
3917 __ movl(destination.AsRegister<CpuRegister>(), in EmitMove()
3918 Address(CpuRegister(RSP), source.GetStackIndex())); in EmitMove()
3921 Address(CpuRegister(RSP), source.GetStackIndex())); in EmitMove()
3924 __ movl(CpuRegister(TMP), Address(CpuRegister(RSP), source.GetStackIndex())); in EmitMove()
3925 __ movl(Address(CpuRegister(RSP), destination.GetStackIndex()), CpuRegister(TMP)); in EmitMove()
3929 __ movq(destination.AsRegister<CpuRegister>(), in EmitMove()
3930 Address(CpuRegister(RSP), source.GetStackIndex())); in EmitMove()
3933 Address(CpuRegister(RSP), source.GetStackIndex())); in EmitMove()
3936 __ movq(CpuRegister(TMP), Address(CpuRegister(RSP), source.GetStackIndex())); in EmitMove()
3937 __ movq(Address(CpuRegister(RSP), destination.GetStackIndex()), CpuRegister(TMP)); in EmitMove()
3945 __ xorl(destination.AsRegister<CpuRegister>(), destination.AsRegister<CpuRegister>()); in EmitMove()
3947 __ movl(destination.AsRegister<CpuRegister>(), Immediate(value)); in EmitMove()
3951 __ movl(Address(CpuRegister(RSP), destination.GetStackIndex()), Immediate(value)); in EmitMove()
3956 codegen_->Load64BitValue(destination.AsRegister<CpuRegister>(), value); in EmitMove()
3959 codegen_->Load64BitValue(CpuRegister(TMP), value); in EmitMove()
3960 __ movq(Address(CpuRegister(RSP), destination.GetStackIndex()), CpuRegister(TMP)); in EmitMove()
3976 __ movl(Address(CpuRegister(RSP), destination.GetStackIndex()), imm); in EmitMove()
3991 codegen_->Load64BitValue(CpuRegister(TMP), value); in EmitMove()
3992 __ movq(Address(CpuRegister(RSP), destination.GetStackIndex()), CpuRegister(TMP)); in EmitMove()
3999 __ movss(Address(CpuRegister(RSP), destination.GetStackIndex()), in EmitMove()
4003 __ movsd(Address(CpuRegister(RSP), destination.GetStackIndex()), in EmitMove()
4009 void ParallelMoveResolverX86_64::Exchange32(CpuRegister reg, int mem) { in Exchange32()
4010 __ movl(CpuRegister(TMP), Address(CpuRegister(RSP), mem)); in Exchange32()
4011 __ movl(Address(CpuRegister(RSP), mem), reg); in Exchange32()
4012 __ movl(reg, CpuRegister(TMP)); in Exchange32()
4020 __ movl(CpuRegister(TMP), Address(CpuRegister(RSP), mem1 + stack_offset)); in Exchange32()
4021 __ movl(CpuRegister(ensure_scratch.GetRegister()), in Exchange32()
4022 Address(CpuRegister(RSP), mem2 + stack_offset)); in Exchange32()
4023 __ movl(Address(CpuRegister(RSP), mem2 + stack_offset), CpuRegister(TMP)); in Exchange32()
4024 __ movl(Address(CpuRegister(RSP), mem1 + stack_offset), in Exchange32()
4025 CpuRegister(ensure_scratch.GetRegister())); in Exchange32()
4028 void ParallelMoveResolverX86_64::Exchange64(CpuRegister reg, int mem) { in Exchange64()
4029 __ movq(CpuRegister(TMP), Address(CpuRegister(RSP), mem)); in Exchange64()
4030 __ movq(Address(CpuRegister(RSP), mem), reg); in Exchange64()
4031 __ movq(reg, CpuRegister(TMP)); in Exchange64()
4039 __ movq(CpuRegister(TMP), Address(CpuRegister(RSP), mem1 + stack_offset)); in Exchange64()
4040 __ movq(CpuRegister(ensure_scratch.GetRegister()), in Exchange64()
4041 Address(CpuRegister(RSP), mem2 + stack_offset)); in Exchange64()
4042 __ movq(Address(CpuRegister(RSP), mem2 + stack_offset), CpuRegister(TMP)); in Exchange64()
4043 __ movq(Address(CpuRegister(RSP), mem1 + stack_offset), in Exchange64()
4044 CpuRegister(ensure_scratch.GetRegister())); in Exchange64()
4048 __ movl(CpuRegister(TMP), Address(CpuRegister(RSP), mem)); in Exchange32()
4049 __ movss(Address(CpuRegister(RSP), mem), reg); in Exchange32()
4050 __ movd(reg, CpuRegister(TMP)); in Exchange32()
4054 __ movq(CpuRegister(TMP), Address(CpuRegister(RSP), mem)); in Exchange64()
4055 __ movsd(Address(CpuRegister(RSP), mem), reg); in Exchange64()
4056 __ movd(reg, CpuRegister(TMP)); in Exchange64()
4065 __ xchgq(destination.AsRegister<CpuRegister>(), source.AsRegister<CpuRegister>()); in EmitSwap()
4067 Exchange32(source.AsRegister<CpuRegister>(), destination.GetStackIndex()); in EmitSwap()
4069 Exchange32(destination.AsRegister<CpuRegister>(), source.GetStackIndex()); in EmitSwap()
4073 Exchange64(source.AsRegister<CpuRegister>(), destination.GetStackIndex()); in EmitSwap()
4075 Exchange64(destination.AsRegister<CpuRegister>(), source.GetStackIndex()); in EmitSwap()
4079 __ movd(CpuRegister(TMP), source.AsFpuRegister<XmmRegister>()); in EmitSwap()
4081 __ movd(destination.AsFpuRegister<XmmRegister>(), CpuRegister(TMP)); in EmitSwap()
4097 __ pushq(CpuRegister(reg)); in SpillScratch()
4102 __ popq(CpuRegister(reg)); in RestoreScratch()
4106 SlowPathCodeX86_64* slow_path, CpuRegister class_reg) { in GenerateClassInitializationCheck()
4124 CpuRegister out = cls->GetLocations()->Out().AsRegister<CpuRegister>(); in VisitLoadClass()
4163 check->GetLocations()->InAt(0).AsRegister<CpuRegister>()); in VisitClinitCheck()
4176 CpuRegister out = load->GetLocations()->Out().AsRegister<CpuRegister>(); in VisitLoadString()
4177 codegen_->LoadCurrentMethod(CpuRegister(out)); in VisitLoadString()
4195 __ gs()->movl(load->GetLocations()->Out().AsRegister<CpuRegister>(), address); in VisitLoadException()
4224 CpuRegister obj = locations->InAt(0).AsRegister<CpuRegister>(); in VisitInstanceOf()
4226 CpuRegister out = locations->Out().AsRegister<CpuRegister>(); in VisitInstanceOf()
4240 __ cmpl(out, cls.AsRegister<CpuRegister>()); in VisitInstanceOf()
4243 __ cmpl(out, Address(CpuRegister(RSP), cls.GetStackIndex())); in VisitInstanceOf()
4282 CpuRegister obj = locations->InAt(0).AsRegister<CpuRegister>(); in VisitCheckCast()
4284 CpuRegister temp = locations->GetTemp(0).AsRegister<CpuRegister>(); in VisitCheckCast()
4298 __ cmpl(temp, cls.AsRegister<CpuRegister>()); in VisitCheckCast()
4301 __ cmpl(temp, Address(CpuRegister(RSP), cls.GetStackIndex())); in VisitCheckCast()
4358 __ andl(first.AsRegister<CpuRegister>(), second.AsRegister<CpuRegister>()); in HandleBitwiseOperation()
4360 __ orl(first.AsRegister<CpuRegister>(), second.AsRegister<CpuRegister>()); in HandleBitwiseOperation()
4363 __ xorl(first.AsRegister<CpuRegister>(), second.AsRegister<CpuRegister>()); in HandleBitwiseOperation()
4368 __ andl(first.AsRegister<CpuRegister>(), imm); in HandleBitwiseOperation()
4370 __ orl(first.AsRegister<CpuRegister>(), imm); in HandleBitwiseOperation()
4373 __ xorl(first.AsRegister<CpuRegister>(), imm); in HandleBitwiseOperation()
4376 Address address(CpuRegister(RSP), second.GetStackIndex()); in HandleBitwiseOperation()
4378 __ andl(first.AsRegister<CpuRegister>(), address); in HandleBitwiseOperation()
4380 __ orl(first.AsRegister<CpuRegister>(), address); in HandleBitwiseOperation()
4383 __ xorl(first.AsRegister<CpuRegister>(), address); in HandleBitwiseOperation()
4388 CpuRegister first_reg = first.AsRegister<CpuRegister>(); in HandleBitwiseOperation()
4405 __ andq(first_reg, Address(CpuRegister(RSP), second.GetStackIndex())); in HandleBitwiseOperation()
4407 __ andq(first_reg, second.AsRegister<CpuRegister>()); in HandleBitwiseOperation()
4417 __ orq(first_reg, Address(CpuRegister(RSP), second.GetStackIndex())); in HandleBitwiseOperation()
4419 __ orq(first_reg, second.AsRegister<CpuRegister>()); in HandleBitwiseOperation()
4430 __ xorq(first_reg, Address(CpuRegister(RSP), second.GetStackIndex())); in HandleBitwiseOperation()
4432 __ xorq(first_reg, second.AsRegister<CpuRegister>()); in HandleBitwiseOperation()
4450 void CodeGeneratorX86_64::Load64BitValue(CpuRegister dest, int64_t value) { in Load64BitValue()