Lines Matching refs:__
71 #define __ down_cast<X86Assembler*>(codegen->GetAssembler())-> // NOLINT macro
105 __ Bind(GetEntryLabel()); in EmitNativeCode()
117 __ xorl(temp1, temp1); in EmitNativeCode()
119 __ Bind(&loop); in EmitNativeCode()
124 __ movl(temp2, Address(src, temp1, ScaleFactor::TIMES_4, adjusted_offset)); in EmitNativeCode()
126 __ leal(temp2, Address(src_pos.AsRegister<Register>(), temp1, ScaleFactor::TIMES_1, 0)); in EmitNativeCode()
127 __ movl(temp2, Address(src, temp2, ScaleFactor::TIMES_4, offset)); in EmitNativeCode()
129 __ MaybeUnpoisonHeapReference(temp2); in EmitNativeCode()
142 __ MaybePoisonHeapReference(temp2); in EmitNativeCode()
147 __ movl(Address(dest, temp1, ScaleFactor::TIMES_4, adjusted_offset), temp2); in EmitNativeCode()
149 __ leal(temp3, Address(dest_pos.AsRegister<Register>(), temp1, ScaleFactor::TIMES_1, 0)); in EmitNativeCode()
150 __ movl(Address(dest, temp3, ScaleFactor::TIMES_4, offset), temp2); in EmitNativeCode()
153 __ addl(temp1, Immediate(1)); in EmitNativeCode()
156 __ j(kNotEqual, &loop); in EmitNativeCode()
157 __ jmp(GetExitLabel()); in EmitNativeCode()
166 #undef __
168 #define __ assembler-> macro
197 __ movsd(temp, input.AsFpuRegister<XmmRegister>()); in MoveFPToInt()
198 __ movd(output.AsRegisterPairLow<Register>(), temp); in MoveFPToInt()
199 __ psrlq(temp, Immediate(32)); in MoveFPToInt()
200 __ movd(output.AsRegisterPairHigh<Register>(), temp); in MoveFPToInt()
202 __ movd(output.AsRegister<Register>(), input.AsFpuRegister<XmmRegister>()); in MoveFPToInt()
213 __ movd(temp1, input.AsRegisterPairLow<Register>()); in MoveIntToFP()
214 __ movd(temp2, input.AsRegisterPairHigh<Register>()); in MoveIntToFP()
215 __ punpckldq(temp1, temp2); in MoveIntToFP()
216 __ movsd(output.AsFpuRegister<XmmRegister>(), temp1); in MoveIntToFP()
218 __ movd(output.AsFpuRegister<XmmRegister>(), input.AsRegister<Register>()); in MoveIntToFP()
279 __ bswapl(out); in GenReverseBytes()
280 __ sarl(out, Immediate(16)); in GenReverseBytes()
283 __ bswapl(out); in GenReverseBytes()
314 __ movl(output_lo, input_hi); in VisitLongReverseBytes()
315 __ movl(output_hi, input_lo); in VisitLongReverseBytes()
316 __ bswapl(output_lo); in VisitLongReverseBytes()
317 __ bswapl(output_hi); in VisitLongReverseBytes()
363 __ roundsd(out, in, Immediate(round_mode)); in GenSSE41FPToFPIntrinsic()
427 __ movss(t2, in); in VisitMathRoundFloat()
428 __ roundss(t1, in, Immediate(1)); in VisitMathRoundFloat()
429 __ subss(t2, t1); in VisitMathRoundFloat()
435 __ comiss(t2, codegen_->LiteralInt32Address(bit_cast<int32_t, float>(0.5f), in VisitMathRoundFloat()
438 __ j(kBelow, &skip_incr); in VisitMathRoundFloat()
439 __ addss(t1, codegen_->LiteralInt32Address(bit_cast<int32_t, float>(1.0f), in VisitMathRoundFloat()
442 __ Bind(&skip_incr); in VisitMathRoundFloat()
445 __ pushl(Immediate(bit_cast<int32_t, float>(0.5f))); in VisitMathRoundFloat()
446 __ pushl(Immediate(bit_cast<int32_t, float>(1.0f))); in VisitMathRoundFloat()
447 __ comiss(t2, Address(ESP, 4)); in VisitMathRoundFloat()
448 __ j(kBelow, &skip_incr); in VisitMathRoundFloat()
449 __ addss(t1, Address(ESP, 0)); in VisitMathRoundFloat()
450 __ Bind(&skip_incr); in VisitMathRoundFloat()
451 __ addl(ESP, Immediate(8)); in VisitMathRoundFloat()
457 __ movl(out, Immediate(kPrimIntMax)); in VisitMathRoundFloat()
458 __ cvtsi2ss(t2, out); in VisitMathRoundFloat()
459 __ comiss(t1, t2); in VisitMathRoundFloat()
460 __ j(kAboveEqual, &done); // clipped to max (already in out), does not jump on unordered in VisitMathRoundFloat()
461 __ movl(out, Immediate(0)); // does not change flags in VisitMathRoundFloat()
462 __ j(kUnordered, &done); // NaN mapped to 0 (just moved in out) in VisitMathRoundFloat()
463 __ cvttss2si(out, t1); in VisitMathRoundFloat()
464 __ Bind(&done); in VisitMathRoundFloat()
482 __ subl(ESP, Immediate(16)); in GenFPToFPCall()
483 __ cfi().AdjustCFAOffset(16); in GenFPToFPCall()
486 __ movsd(Address(ESP, 0), XMM0); in GenFPToFPCall()
490 __ movsd(Address(ESP, 8), XMM1); in GenFPToFPCall()
497 __ fstpl(Address(ESP, 0)); in GenFPToFPCall()
498 __ movsd(XMM0, Address(ESP, 0)); in GenFPToFPCall()
501 __ addl(ESP, Immediate(16)); in GenFPToFPCall()
502 __ cfi().AdjustCFAOffset(-16); in GenFPToFPCall()
529 __ xorl(out_loc.AsRegisterPairLow<Register>(), out_loc.AsRegisterPairLow<Register>()); in GenLowestOneBit()
530 __ xorl(out_loc.AsRegisterPairHigh<Register>(), out_loc.AsRegisterPairHigh<Register>()); in GenLowestOneBit()
532 __ xorl(out_loc.AsRegister<Register>(), out_loc.AsRegister<Register>()); in GenLowestOneBit()
562 __ movl(out_lo, src_lo); in GenLowestOneBit()
563 __ movl(out_hi, src_hi); in GenLowestOneBit()
565 __ negl(out_lo); in GenLowestOneBit()
566 __ adcl(out_hi, Immediate(0)); in GenLowestOneBit()
567 __ negl(out_hi); in GenLowestOneBit()
569 __ andl(out_lo, src_lo); in GenLowestOneBit()
570 __ andl(out_hi, src_hi); in GenLowestOneBit()
574 __ blsi(out, src.AsRegister<Register>()); in GenLowestOneBit()
579 __ movl(out, src.AsRegister<Register>()); in GenLowestOneBit()
582 __ movl(out, Address(ESP, src.GetStackIndex())); in GenLowestOneBit()
584 __ negl(out); in GenLowestOneBit()
587 __ andl(out, src.AsRegister<Register>()); in GenLowestOneBit()
589 __ andl(out, Address(ESP, src.GetStackIndex())); in GenLowestOneBit()
841 __ cmpl(Address(input, length_offset), in CheckPosition()
844 __ cmpl(Address(input, length_offset), length.AsRegister<Register>()); in CheckPosition()
846 __ j(kLess, slow_path->GetEntryLabel()); in CheckPosition()
850 __ movl(temp, Address(input, length_offset)); in CheckPosition()
851 __ subl(temp, Immediate(pos_const)); in CheckPosition()
852 __ j(kLess, slow_path->GetEntryLabel()); in CheckPosition()
856 __ cmpl(temp, Immediate(length.GetConstant()->AsIntConstant()->GetValue())); in CheckPosition()
858 __ cmpl(temp, length.AsRegister<Register>()); in CheckPosition()
860 __ j(kLess, slow_path->GetEntryLabel()); in CheckPosition()
865 __ testl(pos_reg, pos_reg); in CheckPosition()
866 __ j(kNotEqual, slow_path->GetEntryLabel()); in CheckPosition()
870 __ testl(pos_reg, pos_reg); in CheckPosition()
871 __ j(kLess, slow_path->GetEntryLabel()); in CheckPosition()
874 __ cmpl(Address(input, length_offset), pos_reg); in CheckPosition()
875 __ j(kLess, slow_path->GetEntryLabel()); in CheckPosition()
878 __ movl(temp, Address(input, length_offset)); in CheckPosition()
879 __ subl(temp, pos_reg); in CheckPosition()
881 __ cmpl(temp, Immediate(length.GetConstant()->AsIntConstant()->GetValue())); in CheckPosition()
883 __ cmpl(temp, length.AsRegister<Register>()); in CheckPosition()
885 __ j(kLess, slow_path->GetEntryLabel()); in CheckPosition()
912 __ cmpl(src, dest); in SystemArrayCopyPrimitive()
913 __ j(kEqual, slow_path->GetEntryLabel()); in SystemArrayCopyPrimitive()
916 __ testl(src, src); in SystemArrayCopyPrimitive()
917 __ j(kEqual, slow_path->GetEntryLabel()); in SystemArrayCopyPrimitive()
920 __ testl(dest, dest); in SystemArrayCopyPrimitive()
921 __ j(kEqual, slow_path->GetEntryLabel()); in SystemArrayCopyPrimitive()
926 __ cmpl(length.AsRegister<Register>(), length.AsRegister<Register>()); in SystemArrayCopyPrimitive()
927 __ j(kLess, slow_path->GetEntryLabel()); in SystemArrayCopyPrimitive()
932 __ movl(count, Immediate(length.GetConstant()->AsIntConstant()->GetValue())); in SystemArrayCopyPrimitive()
934 __ movl(count, length.AsRegister<Register>()); in SystemArrayCopyPrimitive()
951 __ leal(src_base, Address(src, data_size * src_pos_const + data_offset)); in SystemArrayCopyPrimitive()
953 __ leal(src_base, Address(src, src_pos.AsRegister<Register>(), scale_factor, data_offset)); in SystemArrayCopyPrimitive()
957 __ leal(dest_base, Address(dest, data_size * dest_pos_const + data_offset)); in SystemArrayCopyPrimitive()
959 __ leal(dest_base, Address(dest, dest_pos.AsRegister<Register>(), scale_factor, data_offset)); in SystemArrayCopyPrimitive()
965 __ rep_movsb(); in SystemArrayCopyPrimitive()
968 __ rep_movsw(); in SystemArrayCopyPrimitive()
971 __ rep_movsl(); in SystemArrayCopyPrimitive()
976 __ Bind(slow_path->GetExitLabel()); in SystemArrayCopyPrimitive()
1024 __ testl(argument, argument); in VisitStringCompareTo()
1027 __ j(kEqual, slow_path->GetEntryLabel()); in VisitStringCompareTo()
1030 __ Bind(slow_path->GetExitLabel()); in VisitStringCompareTo()
1070 __ testl(arg, arg); in VisitStringEquals()
1071 __ j(kEqual, &return_false); in VisitStringEquals()
1086 __ movl(ecx, Address(str, class_offset)); in VisitStringEquals()
1088 __ cmpl(ecx, Address(arg, class_offset)); in VisitStringEquals()
1089 __ j(kNotEqual, &return_false); in VisitStringEquals()
1093 __ cmpl(str, arg); in VisitStringEquals()
1094 __ j(kEqual, &return_true); in VisitStringEquals()
1097 __ movl(ecx, Address(str, count_offset)); in VisitStringEquals()
1101 __ cmpl(ecx, Address(arg, count_offset)); in VisitStringEquals()
1102 __ j(kNotEqual, &return_false); in VisitStringEquals()
1106 __ jecxz(&return_true); in VisitStringEquals()
1112 __ shrl(ecx, Immediate(1)); in VisitStringEquals()
1113 __ j(kCarrySet, &string_uncompressed); in VisitStringEquals()
1115 __ addl(ecx, Immediate(1)); in VisitStringEquals()
1116 __ shrl(ecx, Immediate(1)); in VisitStringEquals()
1117 __ Bind(&string_uncompressed); in VisitStringEquals()
1120 __ leal(esi, Address(str, value_offset)); in VisitStringEquals()
1121 __ leal(edi, Address(arg, value_offset)); in VisitStringEquals()
1125 __ addl(ecx, Immediate(1)); in VisitStringEquals()
1126 __ shrl(ecx, Immediate(1)); in VisitStringEquals()
1134 __ repe_cmpsl(); in VisitStringEquals()
1136 __ j(kNotEqual, &return_false); in VisitStringEquals()
1140 __ Bind(&return_true); in VisitStringEquals()
1141 __ movl(esi, Immediate(1)); in VisitStringEquals()
1142 __ jmp(&end); in VisitStringEquals()
1145 __ Bind(&return_false); in VisitStringEquals()
1146 __ xorl(esi, esi); in VisitStringEquals()
1147 __ Bind(&end); in VisitStringEquals()
1213 __ jmp(slow_path->GetEntryLabel()); in GenerateStringIndexOf()
1214 __ Bind(slow_path->GetExitLabel()); in GenerateStringIndexOf()
1218 __ cmpl(search_value, Immediate(std::numeric_limits<uint16_t>::max())); in GenerateStringIndexOf()
1221 __ j(kAbove, slow_path->GetEntryLabel()); in GenerateStringIndexOf()
1231 __ movl(string_length, Address(string_obj, count_offset)); in GenerateStringIndexOf()
1238 __ testl(string_length, string_length); in GenerateStringIndexOf()
1239 __ j(kEqual, ¬_found_label); in GenerateStringIndexOf()
1243 __ movl(string_length_flagged, string_length); in GenerateStringIndexOf()
1245 __ shrl(string_length, Immediate(1)); in GenerateStringIndexOf()
1250 __ movl(counter, string_length); in GenerateStringIndexOf()
1253 __ addl(string_obj, Immediate(value_offset)); in GenerateStringIndexOf()
1258 __ cmpl(start_index, string_length); in GenerateStringIndexOf()
1259 __ j(kGreaterEqual, ¬_found_label); in GenerateStringIndexOf()
1262 __ xorl(counter, counter); in GenerateStringIndexOf()
1263 __ cmpl(start_index, Immediate(0)); in GenerateStringIndexOf()
1264 __ cmovl(kGreater, counter, start_index); in GenerateStringIndexOf()
1268 __ testl(string_length_flagged, Immediate(1)); in GenerateStringIndexOf()
1269 __ j(kNotZero, &offset_uncompressed_label); in GenerateStringIndexOf()
1271 __ leal(string_obj, Address(string_obj, counter, ScaleFactor::TIMES_1, value_offset)); in GenerateStringIndexOf()
1272 __ jmp(&modify_counter); in GenerateStringIndexOf()
1275 __ Bind(&offset_uncompressed_label); in GenerateStringIndexOf()
1276 __ leal(string_obj, Address(string_obj, counter, ScaleFactor::TIMES_2, value_offset)); in GenerateStringIndexOf()
1280 __ Bind(&modify_counter); in GenerateStringIndexOf()
1282 __ leal(string_obj, Address(string_obj, counter, ScaleFactor::TIMES_2, value_offset)); in GenerateStringIndexOf()
1284 __ negl(counter); in GenerateStringIndexOf()
1285 __ leal(counter, Address(string_length, counter, ScaleFactor::TIMES_1, 0)); in GenerateStringIndexOf()
1291 __ testl(string_length_flagged, Immediate(1)); in GenerateStringIndexOf()
1292 __ j(kNotZero, &uncompressed_string_comparison); in GenerateStringIndexOf()
1295 __ cmpl(search_value, Immediate(127)); in GenerateStringIndexOf()
1296 __ j(kGreater, ¬_found_label); in GenerateStringIndexOf()
1298 __ repne_scasb(); in GenerateStringIndexOf()
1299 __ jmp(&comparison_done); in GenerateStringIndexOf()
1304 __ Bind(&uncompressed_string_comparison); in GenerateStringIndexOf()
1305 __ repne_scasw(); in GenerateStringIndexOf()
1306 __ Bind(&comparison_done); in GenerateStringIndexOf()
1308 __ repne_scasw(); in GenerateStringIndexOf()
1311 __ j(kNotEqual, ¬_found_label); in GenerateStringIndexOf()
1314 __ subl(string_length, counter); in GenerateStringIndexOf()
1315 __ leal(out, Address(string_length, -1)); in GenerateStringIndexOf()
1318 __ jmp(&done); in GenerateStringIndexOf()
1321 __ Bind(¬_found_label); in GenerateStringIndexOf()
1322 __ movl(out, Immediate(-1)); in GenerateStringIndexOf()
1325 __ Bind(&done); in GenerateStringIndexOf()
1327 __ Bind(slow_path->GetExitLabel()); in GenerateStringIndexOf()
1363 __ testl(byte_array, byte_array); in VisitStringNewStringFromBytes()
1366 __ j(kEqual, slow_path->GetEntryLabel()); in VisitStringNewStringFromBytes()
1370 __ Bind(slow_path->GetExitLabel()); in VisitStringNewStringFromBytes()
1407 __ testl(string_to_copy, string_to_copy); in VisitStringNewStringFromString()
1410 __ j(kEqual, slow_path->GetEntryLabel()); in VisitStringNewStringFromString()
1414 __ Bind(slow_path->GetExitLabel()); in VisitStringNewStringFromString()
1459 __ pushl(ECX); in VisitStringGetCharsNoCheck()
1461 __ cfi().AdjustCFAOffset(stack_adjust); in VisitStringGetCharsNoCheck()
1464 __ subl(ECX, Immediate(srcBegin_value)); in VisitStringGetCharsNoCheck()
1467 __ subl(ECX, srcBegin.AsRegister<Register>()); in VisitStringGetCharsNoCheck()
1476 __ pushl(EAX); in VisitStringGetCharsNoCheck()
1477 __ cfi().AdjustCFAOffset(stack_adjust); in VisitStringGetCharsNoCheck()
1480 __ testl(Address(obj, count_offset), Immediate(1)); in VisitStringGetCharsNoCheck()
1483 __ j(kNotZero, ©_uncompressed); in VisitStringGetCharsNoCheck()
1486 __ leal(ESI, CodeGeneratorX86::ArrayAddress(obj, srcBegin, TIMES_1, value_offset)); in VisitStringGetCharsNoCheck()
1489 __ leal(EDI, Address(dst, dstBegin, ScaleFactor::TIMES_2, data_offset)); in VisitStringGetCharsNoCheck()
1490 __ Bind(©_loop); in VisitStringGetCharsNoCheck()
1491 __ jecxz(&done); in VisitStringGetCharsNoCheck()
1494 __ movzxb(EAX, Address(ESI, 0)); in VisitStringGetCharsNoCheck()
1495 __ movw(Address(EDI, 0), EAX); in VisitStringGetCharsNoCheck()
1496 __ leal(EDI, Address(EDI, char_size)); in VisitStringGetCharsNoCheck()
1497 __ leal(ESI, Address(ESI, c_char_size)); in VisitStringGetCharsNoCheck()
1499 __ subl(ECX, Immediate(1)); in VisitStringGetCharsNoCheck()
1500 __ jmp(©_loop); in VisitStringGetCharsNoCheck()
1501 __ Bind(©_uncompressed); in VisitStringGetCharsNoCheck()
1506 __ leal(EDI, Address(dst, dstBegin, ScaleFactor::TIMES_2, data_offset)); in VisitStringGetCharsNoCheck()
1507 __ leal(ESI, CodeGeneratorX86::ArrayAddress(obj, srcBegin, TIMES_2, value_offset)); in VisitStringGetCharsNoCheck()
1508 __ rep_movsw(); in VisitStringGetCharsNoCheck()
1510 __ Bind(&done); in VisitStringGetCharsNoCheck()
1513 __ popl(EAX); in VisitStringGetCharsNoCheck()
1514 __ cfi().AdjustCFAOffset(-stack_adjust); in VisitStringGetCharsNoCheck()
1517 __ popl(ECX); in VisitStringGetCharsNoCheck()
1518 __ cfi().AdjustCFAOffset(-stack_adjust); in VisitStringGetCharsNoCheck()
1528 __ movsxb(out_loc.AsRegister<Register>(), Address(address, 0)); in GenPeek()
1531 __ movsxw(out_loc.AsRegister<Register>(), Address(address, 0)); in GenPeek()
1534 __ movl(out_loc.AsRegister<Register>(), Address(address, 0)); in GenPeek()
1537 __ movl(out_loc.AsRegisterPairLow<Register>(), Address(address, 0)); in GenPeek()
1538 __ movl(out_loc.AsRegisterPairHigh<Register>(), Address(address, 4)); in GenPeek()
1600 __ movb(Address(address, 0), in GenPoke()
1603 __ movb(Address(address, 0), value_loc.AsRegister<ByteRegister>()); in GenPoke()
1608 __ movw(Address(address, 0), in GenPoke()
1611 __ movw(Address(address, 0), value_loc.AsRegister<Register>()); in GenPoke()
1616 __ movl(Address(address, 0), in GenPoke()
1619 __ movl(Address(address, 0), value_loc.AsRegister<Register>()); in GenPoke()
1625 __ movl(Address(address, 0), Immediate(Low32Bits(value))); in GenPoke()
1626 __ movl(Address(address, 4), Immediate(High32Bits(value))); in GenPoke()
1628 __ movl(Address(address, 0), value_loc.AsRegisterPairLow<Register>()); in GenPoke()
1629 __ movl(Address(address, 4), value_loc.AsRegisterPairHigh<Register>()); in GenPoke()
1696 __ movl(output, Address(base, offset, ScaleFactor::TIMES_1, 0)); in GenUnsafeGet()
1708 __ movl(output, Address(base, offset, ScaleFactor::TIMES_1, 0)); in GenUnsafeGet()
1713 __ movl(output, Address(base, offset, ScaleFactor::TIMES_1, 0)); in GenUnsafeGet()
1714 __ MaybeUnpoisonHeapReference(output); in GenUnsafeGet()
1725 __ movsd(temp, Address(base, offset, ScaleFactor::TIMES_1, 0)); in GenUnsafeGet()
1726 __ movd(output_lo, temp); in GenUnsafeGet()
1727 __ psrlq(temp, Immediate(32)); in GenUnsafeGet()
1728 __ movd(output_hi, temp); in GenUnsafeGet()
1730 __ movl(output_lo, Address(base, offset, ScaleFactor::TIMES_1, 0)); in GenUnsafeGet()
1731 __ movl(output_hi, Address(base, offset, ScaleFactor::TIMES_1, 4)); in GenUnsafeGet()
2003 __ movd(temp1, value_lo); in GenUnsafePut()
2004 __ movd(temp2, value_hi); in GenUnsafePut()
2005 __ punpckldq(temp1, temp2); in GenUnsafePut()
2006 __ movsd(Address(base, offset, ScaleFactor::TIMES_1, 0), temp1); in GenUnsafePut()
2008 __ movl(Address(base, offset, ScaleFactor::TIMES_1, 0), value_lo); in GenUnsafePut()
2009 __ movl(Address(base, offset, ScaleFactor::TIMES_1, 4), value_hi); in GenUnsafePut()
2013 __ movl(temp, value_loc.AsRegister<Register>()); in GenUnsafePut()
2014 __ PoisonHeapReference(temp); in GenUnsafePut()
2015 __ movl(Address(base, offset, ScaleFactor::TIMES_1, 0), temp); in GenUnsafePut()
2017 __ movl(Address(base, offset, ScaleFactor::TIMES_1, 0), value_loc.AsRegister<Register>()); in GenUnsafePut()
2205 __ LockCmpxchgb(field_addr, new_value.AsRegister<ByteRegister>()); in GenPrimitiveLockedCmpxchg()
2209 __ LockCmpxchgw(field_addr, new_value.AsRegister<Register>()); in GenPrimitiveLockedCmpxchg()
2212 __ LockCmpxchgl(field_addr, new_value.AsRegister<Register>()); in GenPrimitiveLockedCmpxchg()
2220 __ LockCmpxchgl(field_addr, temp); in GenPrimitiveLockedCmpxchg()
2230 __ LockCmpxchg8b(field_addr); in GenPrimitiveLockedCmpxchg()
2261 __ movzxb(out.AsRegister<Register>(), out.AsRegister<ByteRegister>()); in GenPrimitiveCAS()
2264 __ movsxb(out.AsRegister<Register>(), out.AsRegister<ByteRegister>()); in GenPrimitiveCAS()
2267 __ movsxw(out.AsRegister<Register>(), out.AsRegister<Register>()); in GenPrimitiveCAS()
2270 __ movzxw(out.AsRegister<Register>(), out.AsRegister<Register>()); in GenPrimitiveCAS()
2273 __ movd(out.AsFpuRegister<XmmRegister>(), EAX); in GenPrimitiveCAS()
2281 __ setb(kZero, out.AsRegister<Register>()); in GenPrimitiveCAS()
2282 __ movzxb(out.AsRegister<Register>(), out.AsRegister<ByteRegister>()); in GenPrimitiveCAS()
2327 __ movl(value, base); in GenReferenceCAS()
2340 __ PoisonHeapReference(expected); in GenReferenceCAS()
2341 __ PoisonHeapReference(value); in GenReferenceCAS()
2343 __ LockCmpxchgl(field_addr, value); in GenReferenceCAS()
2350 __ MaybeUnpoisonHeapReference(out.AsRegister<Register>()); in GenReferenceCAS()
2353 __ setb(kZero, out.AsRegister<Register>()); in GenReferenceCAS()
2354 __ movzxb(out.AsRegister<Register>(), out.AsRegister<ByteRegister>()); in GenReferenceCAS()
2360 __ j(kNotZero, &skip_mark_gc_card); in GenReferenceCAS()
2362 __ Bind(&skip_mark_gc_card); in GenReferenceCAS()
2374 __ UnpoisonHeapReference(value); in GenReferenceCAS()
2463 __ movl(temp, reg); in SwapBits()
2464 __ shrl(reg, imm_shift); in SwapBits()
2465 __ andl(temp, imm_mask); in SwapBits()
2466 __ andl(reg, imm_mask); in SwapBits()
2467 __ shll(temp, imm_shift); in SwapBits()
2468 __ orl(reg, temp); in SwapBits()
2487 __ bswapl(reg); in VisitIntegerReverse()
2512 __ movl(temp, reg_low); in VisitLongReverse()
2513 __ movl(reg_low, reg_high); in VisitLongReverse()
2514 __ movl(reg_high, temp); in VisitLongReverse()
2517 __ bswapl(reg_low); in VisitLongReverse()
2523 __ bswapl(reg_high); in VisitLongReverse()
2565 __ popcntl(out, src.AsRegister<Register>()); in GenBitCount()
2568 __ popcntl(out, Address(ESP, src.GetStackIndex())); in GenBitCount()
2574 __ popcntl(temp, src.AsRegisterPairLow<Register>()); in GenBitCount()
2575 __ popcntl(out, src.AsRegisterPairHigh<Register>()); in GenBitCount()
2578 __ popcntl(temp, Address(ESP, src.GetStackIndex())); in GenBitCount()
2579 __ popcntl(out, Address(ESP, src.GetHighStackIndex(kX86WordSize))); in GenBitCount()
2581 __ addl(out, temp); in GenBitCount()
2634 __ bsrl(out, src.AsRegister<Register>()); in GenLeadingZeros()
2637 __ bsrl(out, Address(ESP, src.GetStackIndex())); in GenLeadingZeros()
2642 __ j(kEqual, &all_zeroes); in GenLeadingZeros()
2645 __ xorl(out, Immediate(31)); in GenLeadingZeros()
2646 __ jmp(&done); in GenLeadingZeros()
2649 __ Bind(&all_zeroes); in GenLeadingZeros()
2650 __ movl(out, Immediate(32)); in GenLeadingZeros()
2652 __ Bind(&done); in GenLeadingZeros()
2663 __ testl(src_hi, src_hi); in GenLeadingZeros()
2664 __ j(kEqual, &handle_low); in GenLeadingZeros()
2667 __ bsrl(out, src_hi); in GenLeadingZeros()
2670 __ xorl(out, Immediate(31)); in GenLeadingZeros()
2671 __ jmp(&done); in GenLeadingZeros()
2674 __ Bind(&handle_low); in GenLeadingZeros()
2675 __ bsrl(out, src_lo); in GenLeadingZeros()
2676 __ j(kEqual, &all_zeroes); in GenLeadingZeros()
2679 __ xorl(out, Immediate(63)); in GenLeadingZeros()
2680 __ jmp(&done); in GenLeadingZeros()
2683 __ Bind(&all_zeroes); in GenLeadingZeros()
2684 __ movl(out, Immediate(64)); in GenLeadingZeros()
2686 __ Bind(&done); in GenLeadingZeros()
2738 __ bsfl(out, src.AsRegister<Register>()); in GenTrailingZeros()
2741 __ bsfl(out, Address(ESP, src.GetStackIndex())); in GenTrailingZeros()
2746 __ j(kNotEqual, &done); in GenTrailingZeros()
2749 __ movl(out, Immediate(32)); in GenTrailingZeros()
2751 __ Bind(&done); in GenTrailingZeros()
2762 __ bsfl(out, src_lo); in GenTrailingZeros()
2763 __ j(kNotEqual, &done); in GenTrailingZeros()
2766 __ bsfl(out, src_hi); in GenTrailingZeros()
2767 __ j(kEqual, &all_zeroes); in GenTrailingZeros()
2770 __ addl(out, Immediate(32)); in GenTrailingZeros()
2771 __ jmp(&done); in GenTrailingZeros()
2774 __ Bind(&all_zeroes); in GenTrailingZeros()
2775 __ movl(out, Immediate(64)); in GenTrailingZeros()
2777 __ Bind(&done); in GenTrailingZeros()
2816 __ leal(base, Address(array, element_size * constant + data_offset)); in GenSystemArrayCopyBaseAddress()
2818 __ leal(base, Address(array, pos.AsRegister<Register>(), scale_factor, data_offset)); in GenSystemArrayCopyBaseAddress()
2837 __ leal(end, Address(base, element_size * constant)); in GenSystemArrayCopyEndAddress()
2839 __ leal(end, Address(base, copy_length.AsRegister<Register>(), scale_factor, 0)); in GenSystemArrayCopyEndAddress()
2917 __ cmpl(src, dest); in VisitSystemArrayCopy()
2918 __ j(kEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
2922 __ cmpl(src, dest); in VisitSystemArrayCopy()
2923 __ j(kNotEqual, &conditions_on_positions_validated); in VisitSystemArrayCopy()
2925 __ cmpl(dest_pos.AsRegister<Register>(), Immediate(src_pos_constant)); in VisitSystemArrayCopy()
2926 __ j(kGreater, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
2930 __ cmpl(src, dest); in VisitSystemArrayCopy()
2931 __ j(kNotEqual, &conditions_on_positions_validated); in VisitSystemArrayCopy()
2935 __ cmpl(src_pos.AsRegister<Register>(), Immediate(dest_pos_constant)); in VisitSystemArrayCopy()
2936 __ j(kLess, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
2938 __ cmpl(src_pos.AsRegister<Register>(), dest_pos.AsRegister<Register>()); in VisitSystemArrayCopy()
2939 __ j(kLess, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
2943 __ Bind(&conditions_on_positions_validated); in VisitSystemArrayCopy()
2947 __ testl(src, src); in VisitSystemArrayCopy()
2948 __ j(kEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
2953 __ testl(dest, dest); in VisitSystemArrayCopy()
2954 __ j(kEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
2960 __ movl(temp3, Address(ESP, length.GetStackIndex())); in VisitSystemArrayCopy()
2969 __ testl(length.AsRegister<Register>(), length.AsRegister<Register>()); in VisitSystemArrayCopy()
2970 __ j(kLess, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3006 __ testl(temp1, temp1); in VisitSystemArrayCopy()
3007 __ j(kEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3012 __ movl(temp1, Address(src, class_offset)); in VisitSystemArrayCopy()
3013 __ MaybeUnpoisonHeapReference(temp1); in VisitSystemArrayCopy()
3016 __ movl(temp1, Address(temp1, component_offset)); in VisitSystemArrayCopy()
3017 __ testl(temp1, temp1); in VisitSystemArrayCopy()
3018 __ j(kEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3019 __ MaybeUnpoisonHeapReference(temp1); in VisitSystemArrayCopy()
3021 __ cmpw(Address(temp1, primitive_offset), Immediate(Primitive::kPrimNot)); in VisitSystemArrayCopy()
3022 __ j(kNotEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3051 __ testl(temp2, temp2); in VisitSystemArrayCopy()
3052 __ j(kEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3055 __ cmpw(Address(temp2, primitive_offset), Immediate(Primitive::kPrimNot)); in VisitSystemArrayCopy()
3056 __ j(kNotEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3065 __ cmpl(temp1, temp2); in VisitSystemArrayCopy()
3069 __ j(kEqual, &do_copy); in VisitSystemArrayCopy()
3077 __ cmpl(Address(temp1, super_offset), Immediate(0)); in VisitSystemArrayCopy()
3078 __ j(kNotEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3079 __ Bind(&do_copy); in VisitSystemArrayCopy()
3081 __ j(kNotEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3087 __ movl(temp1, Address(dest, class_offset)); in VisitSystemArrayCopy()
3089 __ MaybeUnpoisonHeapReference(temp1); in VisitSystemArrayCopy()
3092 __ movl(temp2, Address(temp1, component_offset)); in VisitSystemArrayCopy()
3093 __ testl(temp2, temp2); in VisitSystemArrayCopy()
3094 __ j(kEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3095 __ MaybeUnpoisonHeapReference(temp2); in VisitSystemArrayCopy()
3096 __ cmpw(Address(temp2, primitive_offset), Immediate(Primitive::kPrimNot)); in VisitSystemArrayCopy()
3097 __ j(kNotEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3100 __ PoisonHeapReference(temp1); in VisitSystemArrayCopy()
3104 __ cmpl(temp1, Address(src, class_offset)); in VisitSystemArrayCopy()
3108 __ j(kEqual, &do_copy); in VisitSystemArrayCopy()
3109 __ MaybeUnpoisonHeapReference(temp1); in VisitSystemArrayCopy()
3111 __ movl(temp1, Address(temp1, component_offset)); in VisitSystemArrayCopy()
3112 __ MaybeUnpoisonHeapReference(temp1); in VisitSystemArrayCopy()
3113 __ cmpl(Address(temp1, super_offset), Immediate(0)); in VisitSystemArrayCopy()
3114 __ j(kNotEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3115 __ Bind(&do_copy); in VisitSystemArrayCopy()
3117 __ j(kNotEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3130 __ testl(temp1, temp1); in VisitSystemArrayCopy()
3131 __ j(kEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3136 __ movl(temp1, Address(src, class_offset)); in VisitSystemArrayCopy()
3137 __ MaybeUnpoisonHeapReference(temp1); in VisitSystemArrayCopy()
3139 __ movl(temp1, Address(temp1, component_offset)); in VisitSystemArrayCopy()
3140 __ testl(temp1, temp1); in VisitSystemArrayCopy()
3141 __ j(kEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3142 __ MaybeUnpoisonHeapReference(temp1); in VisitSystemArrayCopy()
3144 __ cmpw(Address(temp1, primitive_offset), Immediate(Primitive::kPrimNot)); in VisitSystemArrayCopy()
3145 __ j(kNotEqual, intrinsic_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3165 __ movl(temp3, Address(ESP, length.GetStackIndex())); in VisitSystemArrayCopy()
3194 __ cmpl(temp1, temp3); in VisitSystemArrayCopy()
3195 __ j(kEqual, &done); in VisitSystemArrayCopy()
3207 __ testb(Address(src, monitor_offset + gray_byte_position), Immediate(test_value)); in VisitSystemArrayCopy()
3219 __ j(kNotZero, read_barrier_slow_path->GetEntryLabel()); in VisitSystemArrayCopy()
3226 __ Bind(&loop); in VisitSystemArrayCopy()
3227 __ pushl(Address(temp1, 0)); in VisitSystemArrayCopy()
3228 __ cfi().AdjustCFAOffset(4); in VisitSystemArrayCopy()
3229 __ popl(Address(temp2, 0)); in VisitSystemArrayCopy()
3230 __ cfi().AdjustCFAOffset(-4); in VisitSystemArrayCopy()
3231 __ addl(temp1, Immediate(element_size)); in VisitSystemArrayCopy()
3232 __ addl(temp2, Immediate(element_size)); in VisitSystemArrayCopy()
3233 __ cmpl(temp1, temp3); in VisitSystemArrayCopy()
3234 __ j(kNotEqual, &loop); in VisitSystemArrayCopy()
3236 __ Bind(read_barrier_slow_path->GetExitLabel()); in VisitSystemArrayCopy()
3237 __ Bind(&done); in VisitSystemArrayCopy()
3247 __ cmpl(temp1, temp3); in VisitSystemArrayCopy()
3248 __ j(kEqual, &done); in VisitSystemArrayCopy()
3249 __ Bind(&loop); in VisitSystemArrayCopy()
3250 __ pushl(Address(temp1, 0)); in VisitSystemArrayCopy()
3251 __ cfi().AdjustCFAOffset(4); in VisitSystemArrayCopy()
3252 __ popl(Address(temp2, 0)); in VisitSystemArrayCopy()
3253 __ cfi().AdjustCFAOffset(-4); in VisitSystemArrayCopy()
3254 __ addl(temp1, Immediate(element_size)); in VisitSystemArrayCopy()
3255 __ addl(temp2, Immediate(element_size)); in VisitSystemArrayCopy()
3256 __ cmpl(temp1, temp3); in VisitSystemArrayCopy()
3257 __ j(kNotEqual, &loop); in VisitSystemArrayCopy()
3258 __ Bind(&done); in VisitSystemArrayCopy()
3264 __ Bind(intrinsic_slow_path->GetExitLabel()); in VisitSystemArrayCopy()
3320 __ movl(Address(out, info.value_offset), Immediate(value)); in VisitIntegerValueOf()
3326 __ leal(out, Address(in, -info.low)); in VisitIntegerValueOf()
3327 __ cmpl(out, Immediate(info.length)); in VisitIntegerValueOf()
3329 __ j(kAboveEqual, &allocate); in VisitIntegerValueOf()
3342 __ movl(out, in VisitIntegerValueOf()
3353 __ movl(out, Address(out, in, TIMES_4, 0)); in VisitIntegerValueOf()
3355 __ MaybeUnpoisonHeapReference(out); in VisitIntegerValueOf()
3356 __ jmp(&done); in VisitIntegerValueOf()
3357 __ Bind(&allocate); in VisitIntegerValueOf()
3360 __ movl(Address(out, info.value_offset), in); in VisitIntegerValueOf()
3361 __ Bind(&done); in VisitIntegerValueOf()
3383 __ fs()->cmpl(Address::Absolute(offset), in VisitReferenceGetReferent()
3385 __ j(kNotEqual, slow_path->GetEntryLabel()); in VisitReferenceGetReferent()
3397 __ cmpw(Address(out.AsRegister<Register>(), disable_intrinsic_offset.Uint32Value()), in VisitReferenceGetReferent()
3399 __ j(kNotEqual, slow_path->GetEntryLabel()); in VisitReferenceGetReferent()
3412 __ movl(out.AsRegister<Register>(), Address(obj.AsRegister<Register>(), referent_offset)); in VisitReferenceGetReferent()
3418 __ Bind(slow_path->GetExitLabel()); in VisitReferenceGetReferent()
3436 __ movl(out, Address(obj, referent_offset)); in VisitReferenceRefersTo()
3438 __ MaybeUnpoisonHeapReference(out); in VisitReferenceRefersTo()
3443 __ cmpl(out, other); in VisitReferenceRefersTo()
3448 __ j(kEqual, &return_true); in VisitReferenceRefersTo()
3451 __ testl(out, out); in VisitReferenceRefersTo()
3452 __ j(kZero, &return_false); in VisitReferenceRefersTo()
3460 __ movl(out, Address(out, monitor_offset)); in VisitReferenceRefersTo()
3461 __ cmpl(out, Immediate(static_cast<int32_t>(0xc0000000))); in VisitReferenceRefersTo()
3462 __ j(kBelow, &return_false); in VisitReferenceRefersTo()
3465 __ shll(out, Immediate(LockWord::kForwardingAddressShift)); in VisitReferenceRefersTo()
3466 __ cmpl(out, other); in VisitReferenceRefersTo()
3469 __ j(kNotEqual, &return_false); in VisitReferenceRefersTo()
3472 __ Bind(&return_true); in VisitReferenceRefersTo()
3473 __ movl(out, Immediate(1)); in VisitReferenceRefersTo()
3474 __ jmp(&end); in VisitReferenceRefersTo()
3477 __ Bind(&return_false); in VisitReferenceRefersTo()
3478 __ xorl(out, out); in VisitReferenceRefersTo()
3479 __ Bind(&end); in VisitReferenceRefersTo()
3493 __ fs()->movl(out, address); in VisitThreadInterrupted()
3494 __ testl(out, out); in VisitThreadInterrupted()
3495 __ j(kEqual, &done); in VisitThreadInterrupted()
3496 __ fs()->movl(address, Immediate(0)); in VisitThreadInterrupted()
3498 __ Bind(&done); in VisitThreadInterrupted()
3534 __ testl(second_reg, second_reg); in VisitIntegerDivideUnsigned()
3537 __ j(kEqual, slow_path->GetEntryLabel()); in VisitIntegerDivideUnsigned()
3539 __ xorl(edx, edx); in VisitIntegerDivideUnsigned()
3540 __ divl(second_reg); in VisitIntegerDivideUnsigned()
3542 __ Bind(slow_path->GetExitLabel()); in VisitIntegerDivideUnsigned()
3571 __ testl(Address(varhandle_object, access_modes_bitmask_offset), Immediate(access_mode_bit)); in GenerateVarHandleAccessModeCheck()
3572 __ j(kZero, slow_path->GetEntryLabel()); in GenerateVarHandleAccessModeCheck()
3582 __ cmpl(Address(varhandle_object, coordtype0_offset), Immediate(0)); in GenerateVarHandleStaticFieldCheck()
3583 __ j(kNotEqual, slow_path->GetEntryLabel()); in GenerateVarHandleStaticFieldCheck()
3598 __ testl(object, object); in GenerateSubTypeObjectCheck()
3599 __ j(kZero, &type_matched); in GenerateSubTypeObjectCheck()
3604 __ movl(temp, Address(object, class_offset)); in GenerateSubTypeObjectCheck()
3605 __ Bind(&check_type_compatibility); in GenerateSubTypeObjectCheck()
3606 __ cmpl(temp, type_address); in GenerateSubTypeObjectCheck()
3607 __ j(kEqual, &type_matched); in GenerateSubTypeObjectCheck()
3609 __ MaybeUnpoisonHeapReference(temp); in GenerateSubTypeObjectCheck()
3610 __ movl(temp, Address(temp, super_class_offset)); in GenerateSubTypeObjectCheck()
3613 __ testl(temp, temp); in GenerateSubTypeObjectCheck()
3614 __ j(kEqual, slow_path->GetEntryLabel()); in GenerateSubTypeObjectCheck()
3615 __ jmp(&check_type_compatibility); in GenerateSubTypeObjectCheck()
3616 __ Bind(&type_matched); in GenerateSubTypeObjectCheck()
3634 __ cmpl(Address(varhandle_object, coordtype1_offset), Immediate(0)); in GenerateVarHandleInstanceFieldChecks()
3635 __ j(kNotEqual, slow_path->GetEntryLabel()); in GenerateVarHandleInstanceFieldChecks()
3639 __ testl(object, object); in GenerateVarHandleInstanceFieldChecks()
3640 __ j(kZero, slow_path->GetEntryLabel()); in GenerateVarHandleInstanceFieldChecks()
3663 __ movl(temp, Address(varhandle_object, var_type_offset)); in GenerateVarTypePrimitiveTypeCheck()
3664 __ MaybeUnpoisonHeapReference(temp); in GenerateVarTypePrimitiveTypeCheck()
3665 __ cmpw(Address(temp, primitive_type_offset), Immediate(primitive_type)); in GenerateVarTypePrimitiveTypeCheck()
3666 __ j(kNotEqual, slow_path->GetEntryLabel()); in GenerateVarTypePrimitiveTypeCheck()
3773 __ movl(temp, Address(varhandle_object, artfield_offset)); in GenerateVarHandleFieldReference()
3774 __ movl(offset, Address(temp, offset_offset)); in GenerateVarHandleFieldReference()
3882 __ Bind(slow_path->GetExitLabel()); in GenerateVarHandleGet()
4052 __ Bind(slow_path->GetExitLabel()); in GenerateVarHandleSet()
4171 __ xchgb(value.AsRegister<ByteRegister>(), field_addr); in GenerateVarHandleGetAndSet()
4172 __ movzxb(locations->Out().AsRegister<Register>(), in GenerateVarHandleGetAndSet()
4176 __ xchgb(value.AsRegister<ByteRegister>(), field_addr); in GenerateVarHandleGetAndSet()
4177 __ movsxb(locations->Out().AsRegister<Register>(), in GenerateVarHandleGetAndSet()
4181 __ xchgw(value.AsRegister<Register>(), field_addr); in GenerateVarHandleGetAndSet()
4182 __ movzxw(locations->Out().AsRegister<Register>(), locations->Out().AsRegister<Register>()); in GenerateVarHandleGetAndSet()
4185 __ xchgw(value.AsRegister<Register>(), field_addr); in GenerateVarHandleGetAndSet()
4186 __ movsxw(locations->Out().AsRegister<Register>(), locations->Out().AsRegister<Register>()); in GenerateVarHandleGetAndSet()
4189 __ xchgl(value.AsRegister<Register>(), field_addr); in GenerateVarHandleGetAndSet()
4193 __ xchgl(EAX, field_addr); in GenerateVarHandleGetAndSet()
4194 __ movd(locations->Out().AsFpuRegister<XmmRegister>(), EAX); in GenerateVarHandleGetAndSet()
4213 __ movl(temp, value.AsRegister<Register>()); in GenerateVarHandleGetAndSet()
4214 __ PoisonHeapReference(temp); in GenerateVarHandleGetAndSet()
4215 __ xchgl(temp, field_addr); in GenerateVarHandleGetAndSet()
4216 __ UnpoisonHeapReference(temp); in GenerateVarHandleGetAndSet()
4217 __ movl(locations->Out().AsRegister<Register>(), temp); in GenerateVarHandleGetAndSet()
4219 __ xchgl(locations->Out().AsRegister<Register>(), field_addr); in GenerateVarHandleGetAndSet()
4231 __ Bind(slow_path->GetExitLabel()); in GenerateVarHandleGetAndSet()
4374 __ Bind(slow_path->GetExitLabel()); in GenerateVarHandleCompareAndSetOrExchange()
4521 __ LockXaddb(field_addr, value_loc.AsRegister<ByteRegister>()); in GenerateVarHandleGetAndAdd()
4522 __ movsxb(locations->Out().AsRegister<Register>(), in GenerateVarHandleGetAndAdd()
4526 __ LockXaddw(field_addr, value_loc.AsRegister<Register>()); in GenerateVarHandleGetAndAdd()
4527 __ movsxw(locations->Out().AsRegister<Register>(), locations->Out().AsRegister<Register>()); in GenerateVarHandleGetAndAdd()
4530 __ LockXaddw(field_addr, value_loc.AsRegister<Register>()); in GenerateVarHandleGetAndAdd()
4531 __ movzxw(locations->Out().AsRegister<Register>(), locations->Out().AsRegister<Register>()); in GenerateVarHandleGetAndAdd()
4534 __ LockXaddl(field_addr, value_loc.AsRegister<Register>()); in GenerateVarHandleGetAndAdd()
4542 __ Bind(&try_again); in GenerateVarHandleGetAndAdd()
4543 __ movss(temp_float.AsFpuRegister<XmmRegister>(), field_addr); in GenerateVarHandleGetAndAdd()
4544 __ movd(EAX, temp_float.AsFpuRegister<XmmRegister>()); in GenerateVarHandleGetAndAdd()
4545 __ addss(temp_float.AsFpuRegister<XmmRegister>(), in GenerateVarHandleGetAndAdd()
4554 __ j(kNotZero, &try_again); in GenerateVarHandleGetAndAdd()
4564 __ Bind(slow_path->GetExitLabel()); in GenerateVarHandleGetAndAdd()
4642 __ orl(left, right); in GenerateBitwiseOp()
4647 __ xorl(left, right); in GenerateBitwiseOp()
4652 __ andl(left, right); in GenerateBitwiseOp()
4697 __ Bind(&try_again); in GenerateVarHandleGetAndBitwiseOp()
4709 __ j(kNotZero, &try_again); in GenerateVarHandleGetAndBitwiseOp()
4719 __ Bind(slow_path->GetExitLabel()); in GenerateVarHandleGetAndBitwiseOp()
4803 __ vfmadd213ss(left, right, accumulator); in GenerateMathFma()
4806 __ vfmadd213sd(left, right, accumulator); in GenerateMathFma()
4893 #undef __