Lines Matching refs:Register

111     Register src_curr_addr = XRegisterFrom(locations->GetTemp(0));  in EmitNativeCode()
112 Register dst_curr_addr = XRegisterFrom(locations->GetTemp(1)); in EmitNativeCode()
113 Register src_stop_addr = XRegisterFrom(locations->GetTemp(2)); in EmitNativeCode()
114 Register tmp_reg = WRegisterFrom(tmp_); in EmitNativeCode()
405 Register src = InputRegisterAt(instr, 0); in GenBitCount()
406 Register dst = RegisterFrom(instr->GetLocations()->Out(), type); in GenBitCount()
436 Register src = InputRegisterAt(invoke, 0); in GenHighestOneBit()
437 Register dst = RegisterFrom(invoke->GetLocations()->Out(), type); in GenHighestOneBit()
438 Register temp = (type == DataType::Type::kInt64) ? temps.AcquireX() : temps.AcquireW(); in GenHighestOneBit()
469 Register src = InputRegisterAt(invoke, 0); in GenLowestOneBit()
470 Register dst = RegisterFrom(invoke->GetLocations()->Out(), type); in GenLowestOneBit()
471 Register temp = (type == DataType::Type::kInt64) ? temps.AcquireX() : temps.AcquireW(); in GenLowestOneBit()
565 Register out_reg = is_double ? XRegisterFrom(l->Out()) : WRegisterFrom(l->Out()); in GenMathRound()
708 Register base = WRegisterFrom(base_loc); // Object pointer. in GenUnsafeGet()
710 Register offset = XRegisterFrom(offset_loc); // Long offset. in GenUnsafeGet()
712 Register trg = RegisterFrom(trg_loc, type); in GenUnsafeGet()
716 Register temp = WRegisterFrom(locations->GetTemp(0)); in GenUnsafeGet()
848 Register base = WRegisterFrom(locations->InAt(1)); // Object pointer. in GenUnsafePut()
849 Register offset = XRegisterFrom(locations->InAt(2)); // Long offset. in GenUnsafePut()
850 Register value = RegisterFrom(locations->InAt(3), type); in GenUnsafePut()
851 Register source = value; in GenUnsafePut()
861 Register temp = temps.AcquireW(); in GenUnsafePut()
967 Register ptr, in EmitLoadExclusive()
968 Register old_value, in EmitLoadExclusive()
1020 Register ptr, in EmitStoreExclusive()
1021 Register store_result, in EmitStoreExclusive()
1022 Register new_value, in EmitStoreExclusive()
1070 Register ptr, in GenerateCompareAndSet()
1071 Register new_value, in GenerateCompareAndSet()
1072 Register old_value, in GenerateCompareAndSet()
1073 Register store_result, in GenerateCompareAndSet()
1074 Register expected, in GenerateCompareAndSet()
1075 Register expected2 = Register()) { in GenerateCompareAndSet()
1137 Register base, in ReadBarrierCasSlowPathARM64()
1138 Register offset, in ReadBarrierCasSlowPathARM64()
1139 Register expected, in ReadBarrierCasSlowPathARM64()
1140 Register new_value, in ReadBarrierCasSlowPathARM64()
1141 Register old_value, in ReadBarrierCasSlowPathARM64()
1142 Register old_value_temp, in ReadBarrierCasSlowPathARM64()
1143 Register store_result, in ReadBarrierCasSlowPathARM64()
1212 Register tmp_ptr = temps.AcquireX(); in EmitNativeCode()
1213 Register store_result = store_result_.IsValid() ? store_result_ : temps.AcquireW(); in EmitNativeCode()
1261 Register base_;
1262 Register offset_;
1263 Register expected_;
1264 Register new_value_;
1265 Register old_value_;
1266 Register old_value_temp_;
1267 Register store_result_;
1277 Register out = WRegisterFrom(locations->Out()); // Boolean result. in GenUnsafeCas()
1278 Register base = WRegisterFrom(locations->InAt(1)); // Object pointer. in GenUnsafeCas()
1279 Register offset = XRegisterFrom(locations->InAt(2)); // Long offset. in GenUnsafeCas()
1280 Register expected = RegisterFrom(locations->InAt(3), type); // Expected. in GenUnsafeCas()
1281 Register new_value = RegisterFrom(locations->InAt(4), type); // New value. in GenUnsafeCas()
1291 Register tmp_ptr = temps.AcquireX(); // Pointer to actual memory. in GenUnsafeCas()
1292 Register old_value; // Value in memory. in GenUnsafeCas()
1304 Register old_value_temp = WRegisterFrom(locations->GetTemp(1)); in GenUnsafeCas()
1316 /*store_result=*/ Register(), // Use a scratch register. in GenUnsafeCas()
1398 Register ptr, in GenerateGetAndUpdate()
1403 Register store_result = temps.AcquireW(); in GenerateGetAndUpdate()
1406 Register old_value_reg; in GenerateGetAndUpdate()
1407 Register new_value; in GenerateGetAndUpdate()
1498 Register str = InputRegisterAt(invoke, 0); in VisitStringCompareTo()
1499 Register arg = InputRegisterAt(invoke, 1); in VisitStringCompareTo()
1502 Register out = OutputRegister(invoke); in VisitStringCompareTo()
1504 Register temp0 = WRegisterFrom(locations->GetTemp(0)); in VisitStringCompareTo()
1505 Register temp1 = WRegisterFrom(locations->GetTemp(1)); in VisitStringCompareTo()
1506 Register temp2 = WRegisterFrom(locations->GetTemp(2)); in VisitStringCompareTo()
1507 Register temp3; in VisitStringCompareTo()
1573 Register temp4 = scratch_scope.AcquireX(); in VisitStringCompareTo()
1738 Register str = WRegisterFrom(locations->InAt(0)); in VisitStringEquals()
1739 Register arg = WRegisterFrom(locations->InAt(1)); in VisitStringEquals()
1740 Register out = XRegisterFrom(locations->Out()); in VisitStringEquals()
1743 Register temp = scratch_scope.AcquireW(); in VisitStringEquals()
1744 Register temp1 = scratch_scope.AcquireW(); in VisitStringEquals()
1838 Register temp2 = XRegisterFrom(locations->GetTemp(0)); in VisitStringEquals()
1871 Register temp2 = XRegisterFrom(locations->GetTemp(0)); in VisitStringEquals()
1920 Register char_reg = WRegisterFrom(locations->InAt(1)); in GenerateVisitStringIndexOf()
1929 Register tmp_reg = WRegisterFrom(locations->GetTemp(0)); in GenerateVisitStringIndexOf()
1990 Register byte_array = WRegisterFrom(locations->InAt(0)); in VisitStringNewStringFromBytes()
2035 Register string_to_copy = WRegisterFrom(locations->InAt(0)); in VisitStringNewStringFromString()
2255 Register srcObj = XRegisterFrom(locations->InAt(0)); in VisitStringGetCharsNoCheck()
2256 Register srcBegin = XRegisterFrom(locations->InAt(1)); in VisitStringGetCharsNoCheck()
2257 Register srcEnd = XRegisterFrom(locations->InAt(2)); in VisitStringGetCharsNoCheck()
2258 Register dstObj = XRegisterFrom(locations->InAt(3)); in VisitStringGetCharsNoCheck()
2259 Register dstBegin = XRegisterFrom(locations->InAt(4)); in VisitStringGetCharsNoCheck()
2261 Register src_ptr = XRegisterFrom(locations->GetTemp(0)); in VisitStringGetCharsNoCheck()
2262 Register num_chr = XRegisterFrom(locations->GetTemp(1)); in VisitStringGetCharsNoCheck()
2263 Register tmp1 = XRegisterFrom(locations->GetTemp(2)); in VisitStringGetCharsNoCheck()
2266 Register dst_ptr = temps.AcquireX(); in VisitStringGetCharsNoCheck()
2267 Register tmp2 = temps.AcquireX(); in VisitStringGetCharsNoCheck()
2418 const Register& input, in CheckSystemArrayCopyPosition()
2421 const Register& temp, in CheckSystemArrayCopyPosition()
2448 Register pos_reg = WRegisterFrom(pos); in CheckSystemArrayCopyPosition()
2465 const Register& src, in GenSystemArrayCopyAddresses()
2467 const Register& dst, in GenSystemArrayCopyAddresses()
2470 const Register& src_base, in GenSystemArrayCopyAddresses()
2471 const Register& dst_base, in GenSystemArrayCopyAddresses()
2472 const Register& src_end) { in GenSystemArrayCopyAddresses()
2507 Register src = XRegisterFrom(locations->InAt(0)); in VisitSystemArrayCopyChar()
2509 Register dst = XRegisterFrom(locations->InAt(2)); in VisitSystemArrayCopyChar()
2540 Register src_curr_addr = WRegisterFrom(locations->GetTemp(0)); in VisitSystemArrayCopyChar()
2541 Register dst_curr_addr = WRegisterFrom(locations->GetTemp(1)); in VisitSystemArrayCopyChar()
2542 Register src_stop_addr = WRegisterFrom(locations->GetTemp(2)); in VisitSystemArrayCopyChar()
2578 Register tmp = temps.AcquireW(); in VisitSystemArrayCopyChar()
2681 Register src = XRegisterFrom(locations->InAt(0)); in VisitSystemArrayCopy()
2683 Register dest = XRegisterFrom(locations->InAt(2)); in VisitSystemArrayCopy()
2686 Register temp1 = WRegisterFrom(locations->GetTemp(0)); in VisitSystemArrayCopy()
2688 Register temp2 = WRegisterFrom(locations->GetTemp(1)); in VisitSystemArrayCopy()
2776 Register temp3; in VisitSystemArrayCopy()
2989 Register src_curr_addr = temp1.X(); in VisitSystemArrayCopy()
2990 Register dst_curr_addr = temp2.X(); in VisitSystemArrayCopy()
2991 Register src_stop_addr = temp3.X(); in VisitSystemArrayCopy()
3027 Register tmp = temps.AcquireW(); in VisitSystemArrayCopy()
3109 Register tmp = temps.AcquireW(); in VisitSystemArrayCopy()
3121 codegen_->MarkGCCard(dest.W(), Register(), /* value_can_be_null= */ false); in VisitSystemArrayCopy()
3131 Register out; in GenIsInfinite()
3183 Register out = RegisterFrom(locations->Out(), DataType::Type::kReference); in VisitIntegerValueOf()
3185 Register temp = temps.AcquireW(); in VisitIntegerValueOf()
3211 Register in = RegisterFrom(locations->InAt(0), DataType::Type::kInt32); in VisitIntegerValueOf()
3255 Register temp = temps.AcquireW(); in VisitReferenceGetReferent()
3264 Register temp = temps.AcquireW(); in VisitReferenceGetReferent()
3304 Register obj = WRegisterFrom(locations->InAt(0)); in VisitReferenceRefersTo()
3305 Register other = WRegisterFrom(locations->InAt(1)); in VisitReferenceRefersTo()
3306 Register out = WRegisterFrom(locations->Out()); in VisitReferenceRefersTo()
3307 Register tmp = temps.AcquireW(); in VisitReferenceRefersTo()
3359 Register out = RegisterFrom(invoke->GetLocations()->Out(), DataType::Type::kInt32); in VisitThreadInterrupted()
3361 Register temp = temps.AcquireX(); in VisitThreadInterrupted()
3400 Register crc = InputRegisterAt(invoke, 0); in VisitCRC32Update()
3401 Register val = InputRegisterAt(invoke, 1); in VisitCRC32Update()
3402 Register out = OutputRegister(invoke); in VisitCRC32Update()
3411 Register tmp = temps.AcquireSameSizeAs(out); in VisitCRC32Update()
3428 const Register& crc, in GenerateCodeForCalculationCRC32ValueOfBytes()
3429 const Register& ptr, in GenerateCodeForCalculationCRC32ValueOfBytes()
3430 const Register& length, in GenerateCodeForCalculationCRC32ValueOfBytes()
3431 const Register& out) { in GenerateCodeForCalculationCRC32ValueOfBytes()
3452 Register len = temps.AcquireW(); in GenerateCodeForCalculationCRC32ValueOfBytes()
3453 Register array_elem = temps.AcquireW(); in GenerateCodeForCalculationCRC32ValueOfBytes()
3557 Register length = WRegisterFrom(locations->InAt(3)); in VisitCRC32UpdateBytes()
3563 Register ptr = XRegisterFrom(locations->GetTemp(0)); in VisitCRC32UpdateBytes()
3564 Register array = XRegisterFrom(locations->InAt(1)); in VisitCRC32UpdateBytes()
3574 Register crc = WRegisterFrom(locations->InAt(0)); in VisitCRC32UpdateBytes()
3575 Register out = WRegisterFrom(locations->Out()); in VisitCRC32UpdateBytes()
3615 Register addr = XRegisterFrom(locations->InAt(1)); in VisitCRC32UpdateByteBuffer()
3616 Register ptr = XRegisterFrom(locations->GetTemp(0)); in VisitCRC32UpdateByteBuffer()
3619 Register crc = WRegisterFrom(locations->InAt(0)); in VisitCRC32UpdateByteBuffer()
3620 Register length = WRegisterFrom(locations->InAt(3)); in VisitCRC32UpdateByteBuffer()
3621 Register out = WRegisterFrom(locations->Out()); in VisitCRC32UpdateByteBuffer()
3641 Register bits = InputRegisterAt(invoke, 0); in VisitFP16ToFloat()
3666 Register out = WRegisterFrom(invoke->GetLocations()->Out()); in VisitFP16ToHalf()
3680 Register out = WRegisterFrom(locations->Out()); in GenerateFP16Round()
3743 Register out = WRegisterFrom(locations->Out()); in GenerateFP16Compare()
3755 auto compareOp = [masm, cond](const Register out, const VRegister& in0, const VRegister& in1) { in GenerateFP16Compare()
3828 Register dividend = RegisterFrom(locations->InAt(0), type); in GenerateDivideUnsigned()
3829 Register divisor = RegisterFrom(locations->InAt(1), type); in GenerateDivideUnsigned()
3830 Register out = RegisterFrom(locations->Out(), type); in GenerateDivideUnsigned()
3869 Register x = RegisterFrom(locations->InAt(0), type); in VisitMathMultiplyHigh()
3870 Register y = RegisterFrom(locations->InAt(1), type); in VisitMathMultiplyHigh()
3871 Register out = RegisterFrom(locations->Out(), type); in VisitMathMultiplyHigh()
3941 Register object, in GenerateSubTypeObjectCheckNoReadBarrier()
3942 Register type, in GenerateSubTypeObjectCheckNoReadBarrier()
3955 Register temp = temps.AcquireW(); in GenerateSubTypeObjectCheckNoReadBarrier()
3982 Register varhandle = InputRegisterAt(invoke, 0); in GenerateVarHandleAccessModeAndVarTypeChecks()
3989 Register var_type_no_rb = temps.AcquireW(); in GenerateVarHandleAccessModeAndVarTypeChecks()
3990 Register temp2 = temps.AcquireW(); in GenerateVarHandleAccessModeAndVarTypeChecks()
4021 Register arg_reg = WRegisterFrom(invoke->GetLocations()->InAt(arg_index)); in GenerateVarHandleAccessModeAndVarTypeChecks()
4032 Register varhandle = InputRegisterAt(invoke, 0); in GenerateVarHandleStaticFieldCheck()
4037 Register temp = temps.AcquireW(); in GenerateVarHandleStaticFieldCheck()
4049 Register varhandle = InputRegisterAt(invoke, 0); in GenerateVarHandleInstanceFieldChecks()
4050 Register object = InputRegisterAt(invoke, 1); in GenerateVarHandleInstanceFieldChecks()
4059 Register temp = temps.AcquireW(); in GenerateVarHandleInstanceFieldChecks()
4060 Register temp2 = temps.AcquireW(); in GenerateVarHandleInstanceFieldChecks()
4094 Register varhandle = InputRegisterAt(invoke, 0); in GenerateVarHandleArrayChecks()
4095 Register object = InputRegisterAt(invoke, 1); in GenerateVarHandleArrayChecks()
4096 Register index = InputRegisterAt(invoke, 2); in GenerateVarHandleArrayChecks()
4112 Register temp = temps.AcquireW(); in GenerateVarHandleArrayChecks()
4113 Register temp2 = temps.AcquireW(); in GenerateVarHandleArrayChecks()
4202 Register object; // The object holding the value to operate on.
4203 Register offset; // The offset of the value to operate on.
4224 Register varhandle = InputRegisterAt(invoke, 0); in GenerateVarHandleTarget()
4232 Register method = (expected_coordinates_count == 0) ? target.object : target.offset; in GenerateVarHandleTarget()
4255 Register index = InputRegisterAt(invoke, 2); in GenerateVarHandleTarget()
4256 Register shifted_index = index; in GenerateVarHandleTarget()
4447 Register tmp_ptr = target.offset.X(); in GenerateVarHandleGet()
4564 Register temp = temps.AcquireW(); in GenerateVarHandleSet()
4571 Register temp = source.Is64Bits() ? temps.AcquireX() : temps.AcquireW(); in GenerateVarHandleSet()
4592 codegen->MarkGCCard(target.object, Register(value), /*value_can_be_null=*/ true); in GenerateVarHandleSet()
4700 static Register MoveToTempIfFpRegister(const CPURegister& cpu_reg, in MoveToTempIfFpRegister()
4706 Register reg = temps->AcquireW(); in MoveToTempIfFpRegister()
4711 Register reg = temps->AcquireX(); in MoveToTempIfFpRegister()
4757 Register tmp_ptr = target.offset.X(); in GenerateVarHandleCompareAndSetOrExchange()
4765 Register expected_reg = MoveToTempIfFpRegister(expected, value_type, masm, &temps); in GenerateVarHandleCompareAndSetOrExchange()
4766 Register new_value_reg = MoveToTempIfFpRegister(new_value, value_type, masm, &temps); in GenerateVarHandleCompareAndSetOrExchange()
4774 Register temp = temps.AcquireW(); in GenerateVarHandleCompareAndSetOrExchange()
4779 Register temp = temps.AcquireW(); in GenerateVarHandleCompareAndSetOrExchange()
4791 Register temp = is_scratch ? expected_reg : temps.AcquireSameSizeAs(expected_reg); in GenerateVarHandleCompareAndSetOrExchange()
4796 Register temp = is_fp ? new_value_reg : temps.AcquireSameSizeAs(new_value_reg); in GenerateVarHandleCompareAndSetOrExchange()
4803 Register old_value; in GenerateVarHandleCompareAndSetOrExchange()
4804 Register store_result; in GenerateVarHandleCompareAndSetOrExchange()
4845 Register old_value_temp = in GenerateVarHandleCompareAndSetOrExchange()
4849 Register slow_path_store_result = strong ? Register() : store_result; in GenerateVarHandleCompareAndSetOrExchange()
5057 Register tmp_ptr = target.offset.X(); in GenerateVarHandleGetAndUpdate()
5286 Register varhandle = InputRegisterAt(invoke, 0); in EmitByteArrayViewCode()
5287 Register object = InputRegisterAt(invoke, 1); in EmitByteArrayViewCode()
5288 Register index = InputRegisterAt(invoke, 2); in EmitByteArrayViewCode()
5300 Register temp = temps.AcquireW(); in EmitByteArrayViewCode()
5301 Register temp2 = temps.AcquireW(); in EmitByteArrayViewCode()