Lines Matching refs:__

46 #define __ codegen->GetAssembler()->  macro
61 __ Move(V0, trg_reg); in MoveFromReturnRegister()
67 __ MovS(F0, trg_reg); in MoveFromReturnRegister()
69 __ MovD(F0, trg_reg); in MoveFromReturnRegister()
96 __ Bind(GetEntryLabel()); in EmitNativeCode()
119 __ Bc(GetExitLabel()); in EmitNativeCode()
131 #undef __
139 #define __ assembler-> macro
154 __ Dmfc1(out, in); in MoveFPToInt()
156 __ Mfc1(out, in); in MoveFPToInt()
191 __ Dmtc1(in, out); in MoveIntToFP()
193 __ Mtc1(in, out); in MoveIntToFP()
231 __ Dsbh(out, in); in GenReverseBytes()
232 __ Seh(out, out); in GenReverseBytes()
235 __ Rotr(out, in, 16); in GenReverseBytes()
236 __ Wsbh(out, out); in GenReverseBytes()
239 __ Dsbh(out, in); in GenReverseBytes()
240 __ Dshd(out, out); in GenReverseBytes()
282 __ Dclz(out, in); in GenNumberOfLeadingZeroes()
284 __ Clz(out, in); in GenNumberOfLeadingZeroes()
313 __ Dsbh(out.AsRegister<GpuRegister>(), in.AsRegister<GpuRegister>()); in GenNumberOfTrailingZeroes()
314 __ Dshd(out.AsRegister<GpuRegister>(), out.AsRegister<GpuRegister>()); in GenNumberOfTrailingZeroes()
315 __ Dbitswap(out.AsRegister<GpuRegister>(), out.AsRegister<GpuRegister>()); in GenNumberOfTrailingZeroes()
316 __ Dclz(out.AsRegister<GpuRegister>(), out.AsRegister<GpuRegister>()); in GenNumberOfTrailingZeroes()
318 __ Rotr(out.AsRegister<GpuRegister>(), in.AsRegister<GpuRegister>(), 16); in GenNumberOfTrailingZeroes()
319 __ Wsbh(out.AsRegister<GpuRegister>(), out.AsRegister<GpuRegister>()); in GenNumberOfTrailingZeroes()
320 __ Bitswap(out.AsRegister<GpuRegister>(), out.AsRegister<GpuRegister>()); in GenNumberOfTrailingZeroes()
321 __ Clz(out.AsRegister<GpuRegister>(), out.AsRegister<GpuRegister>()); in GenNumberOfTrailingZeroes()
352 __ Rotr(out, in, 16); in GenReverse()
353 __ Wsbh(out, out); in GenReverse()
354 __ Bitswap(out, out); in GenReverse()
356 __ Dsbh(out, in); in GenReverse()
357 __ Dshd(out, out); in GenReverse()
358 __ Dbitswap(out, out); in GenReverse()
420 __ Srl(TMP, in, 1); in GenBitCount()
421 __ LoadConst32(AT, 0x55555555); in GenBitCount()
422 __ And(TMP, TMP, AT); in GenBitCount()
423 __ Subu(TMP, in, TMP); in GenBitCount()
424 __ LoadConst32(AT, 0x33333333); in GenBitCount()
425 __ And(out, TMP, AT); in GenBitCount()
426 __ Srl(TMP, TMP, 2); in GenBitCount()
427 __ And(TMP, TMP, AT); in GenBitCount()
428 __ Addu(TMP, out, TMP); in GenBitCount()
429 __ Srl(out, TMP, 4); in GenBitCount()
430 __ Addu(out, out, TMP); in GenBitCount()
431 __ LoadConst32(AT, 0x0F0F0F0F); in GenBitCount()
432 __ And(out, out, AT); in GenBitCount()
433 __ LoadConst32(TMP, 0x01010101); in GenBitCount()
434 __ MulR6(out, out, TMP); in GenBitCount()
435 __ Srl(out, out, 24); in GenBitCount()
437 __ Dsrl(TMP, in, 1); in GenBitCount()
438 __ LoadConst64(AT, 0x5555555555555555L); in GenBitCount()
439 __ And(TMP, TMP, AT); in GenBitCount()
440 __ Dsubu(TMP, in, TMP); in GenBitCount()
441 __ LoadConst64(AT, 0x3333333333333333L); in GenBitCount()
442 __ And(out, TMP, AT); in GenBitCount()
443 __ Dsrl(TMP, TMP, 2); in GenBitCount()
444 __ And(TMP, TMP, AT); in GenBitCount()
445 __ Daddu(TMP, out, TMP); in GenBitCount()
446 __ Dsrl(out, TMP, 4); in GenBitCount()
447 __ Daddu(out, out, TMP); in GenBitCount()
448 __ LoadConst64(AT, 0x0F0F0F0F0F0F0F0FL); in GenBitCount()
449 __ And(out, out, AT); in GenBitCount()
450 __ LoadConst64(TMP, 0x0101010101010101L); in GenBitCount()
451 __ Dmul(out, out, TMP); in GenBitCount()
452 __ Dsrl32(out, out, 24); in GenBitCount()
479 __ AbsD(out, in); in MathAbsFP()
481 __ AbsS(out, in); in MathAbsFP()
516 __ Dsra32(AT, in, 31); in GenAbsInteger()
517 __ Xor(out, in, AT); in GenAbsInteger()
518 __ Dsubu(out, out, AT); in GenAbsInteger()
520 __ Sra(AT, in, 31); in GenAbsInteger()
521 __ Xor(out, in, AT); in GenAbsInteger()
522 __ Subu(out, out, AT); in GenAbsInteger()
564 __ CmpUnD(FTMP, a, b); in GenMinMaxFP()
565 __ Bc1eqz(FTMP, &noNaNs); in GenMinMaxFP()
568 __ CmpEqD(ftmp, a, a); in GenMinMaxFP()
570 __ SelD(ftmp, a, b); in GenMinMaxFP()
573 __ MovD(out, ftmp); in GenMinMaxFP()
576 __ Bc(&done); in GenMinMaxFP()
578 __ Bind(&noNaNs); in GenMinMaxFP()
581 __ MinD(out, a, b); in GenMinMaxFP()
583 __ MaxD(out, a, b); in GenMinMaxFP()
587 __ CmpUnS(FTMP, a, b); in GenMinMaxFP()
588 __ Bc1eqz(FTMP, &noNaNs); in GenMinMaxFP()
591 __ CmpEqS(ftmp, a, a); in GenMinMaxFP()
593 __ SelS(ftmp, a, b); in GenMinMaxFP()
596 __ MovS(out, ftmp); in GenMinMaxFP()
599 __ Bc(&done); in GenMinMaxFP()
601 __ Bind(&noNaNs); in GenMinMaxFP()
604 __ MinS(out, a, b); in GenMinMaxFP()
606 __ MaxS(out, a, b); in GenMinMaxFP()
610 __ Bind(&done); in GenMinMaxFP()
667 __ Move(out, lhs); in GenMinMax()
694 __ Slt(AT, rhs, lhs); in GenMinMax()
696 __ Seleqz(out, lhs, AT); in GenMinMax()
697 __ Selnez(AT, rhs, AT); in GenMinMax()
699 __ Selnez(out, lhs, AT); in GenMinMax()
700 __ Seleqz(AT, rhs, AT); in GenMinMax()
703 __ Slt(AT, lhs, rhs); in GenMinMax()
705 __ Seleqz(out, rhs, AT); in GenMinMax()
706 __ Selnez(AT, lhs, AT); in GenMinMax()
708 __ Selnez(out, rhs, AT); in GenMinMax()
709 __ Seleqz(AT, lhs, AT); in GenMinMax()
712 __ Or(out, out, AT); in GenMinMax()
772 __ SqrtD(out, in); in VisitMathSqrt()
796 __ RintD(out, in); in VisitMathRint()
830 __ ClassD(out, in); in GenRoundingMode()
831 __ Dmfc1(AT, out); in GenRoundingMode()
832 __ Andi(AT, AT, kFPLeaveUnchanged); // +0.0 | +Inf | -0.0 | -Inf | qNaN | sNaN in GenRoundingMode()
833 __ MovD(out, in); in GenRoundingMode()
834 __ Bnezc(AT, &done); in GenRoundingMode()
849 __ FloorLD(out, in); in GenRoundingMode()
851 __ CeilLD(out, in); in GenRoundingMode()
853 __ Dmfc1(AT, out); in GenRoundingMode()
854 __ MovD(out, in); in GenRoundingMode()
855 __ Daddiu(TMP, AT, 1); in GenRoundingMode()
856 __ Dati(TMP, 0x8000); // TMP = AT + 0x8000 0000 0000 0001 in GenRoundingMode()
860 __ Dsrl(TMP, TMP, 1); // TMP = 0 if AT = Long.MIN_VALUE in GenRoundingMode()
862 __ Beqzc(TMP, &done); in GenRoundingMode()
866 __ Dmtc1(AT, out); in GenRoundingMode()
867 __ Cvtdl(out, out); in GenRoundingMode()
868 __ Bind(&done); in GenRoundingMode()
933 __ CmpUnD(FTMP, in, in); in GenRound()
935 __ CmpUnS(FTMP, in, in); in GenRound()
939 __ Move(out, ZERO); in GenRound()
940 __ Bc1nez(FTMP, &done); in GenRound()
944 __ FloorLD(FTMP, in); in GenRound()
945 __ Dmfc1(out, FTMP); in GenRound()
947 __ FloorWS(FTMP, in); in GenRound()
948 __ Mfc1(out, FTMP); in GenRound()
953 __ LoadConst64(AT, std::numeric_limits<int64_t>::max()); in GenRound()
955 __ LoadConst32(AT, std::numeric_limits<int32_t>::max()); in GenRound()
957 __ Bnec(AT, out, &finite); in GenRound()
960 __ Dmtc1(ZERO, FTMP); in GenRound()
961 __ CmpLtD(FTMP, in, FTMP); in GenRound()
962 __ Dmfc1(AT, FTMP); in GenRound()
964 __ Mtc1(ZERO, FTMP); in GenRound()
965 __ CmpLtS(FTMP, in, FTMP); in GenRound()
966 __ Mfc1(AT, FTMP); in GenRound()
969 __ Bc(&add); in GenRound()
971 __ Bind(&finite); in GenRound()
975 __ Cvtdl(FTMP, FTMP); // Convert output of floor.l.d back to "double". in GenRound()
976 __ LoadConst64(AT, bit_cast<int64_t, double>(0.5)); in GenRound()
977 __ SubD(FTMP, in, FTMP); in GenRound()
978 __ Dmtc1(AT, half); in GenRound()
979 __ CmpLeD(FTMP, half, FTMP); in GenRound()
980 __ Dmfc1(AT, FTMP); in GenRound()
982 __ Cvtsw(FTMP, FTMP); // Convert output of floor.w.s back to "float". in GenRound()
983 __ LoadConst32(AT, bit_cast<int32_t, float>(0.5f)); in GenRound()
984 __ SubS(FTMP, in, FTMP); in GenRound()
985 __ Mtc1(AT, half); in GenRound()
986 __ CmpLeS(FTMP, half, FTMP); in GenRound()
987 __ Mfc1(AT, FTMP); in GenRound()
990 __ Bind(&add); in GenRound()
994 __ Dsubu(out, out, AT); in GenRound()
996 __ Subu(out, out, AT); in GenRound()
999 __ Bind(&done); in GenRound()
1040 __ Lb(out, adr, 0); in VisitMemoryPeekByte()
1053 __ Lh(out, adr, 0); in VisitMemoryPeekShortNative()
1066 __ Lw(out, adr, 0); in VisitMemoryPeekIntNative()
1079 __ Ld(out, adr, 0); in VisitMemoryPeekLongNative()
1100 __ Sb(val, adr, 0); in VisitMemoryPokeByte()
1113 __ Sh(val, adr, 0); in VisitMemoryPokeShortNative()
1126 __ Sw(val, adr, 00); in VisitMemoryPokeIntNative()
1139 __ Sd(val, adr, 0); in VisitMemoryPokeLongNative()
1154 __ LoadFromOffset(kLoadUnsignedWord, in VisitThreadCurrentThread()
1205 __ Daddu(TMP, base, offset); in GenUnsafeGet()
1210 __ Ld(trg, TMP, 0); in GenUnsafeGet()
1212 __ Sync(0); in GenUnsafeGet()
1217 __ Lw(trg, TMP, 0); in GenUnsafeGet()
1219 __ Sync(0); in GenUnsafeGet()
1236 __ Sync(0); in GenUnsafeGet()
1239 __ Lwu(trg, TMP, 0); in GenUnsafeGet()
1241 __ Sync(0); in GenUnsafeGet()
1251 __ Lwu(trg, TMP, 0); in GenUnsafeGet()
1253 __ Sync(0); in GenUnsafeGet()
1255 __ MaybeUnpoisonHeapReference(trg); in GenUnsafeGet()
1346 __ Daddu(TMP, base, offset); in GenUnsafePut()
1348 __ Sync(0); in GenUnsafePut()
1354 __ PoisonHeapReference(AT, value); in GenUnsafePut()
1355 __ Sw(AT, TMP, 0); in GenUnsafePut()
1357 __ Sw(value, TMP, 0); in GenUnsafePut()
1362 __ Sd(value, TMP, 0); in GenUnsafePut()
1370 __ Sync(0); in GenUnsafePut()
1563 __ Daddu(TMP, base, offset); in GenCas()
1566 __ PoisonHeapReference(expected); in GenCas()
1570 __ PoisonHeapReference(value); in GenCas()
1579 __ Sync(0); in GenCas()
1580 __ Bind(&loop_head); in GenCas()
1582 __ Lld(out, TMP); in GenCas()
1586 __ Ll(out, TMP); in GenCas()
1590 __ Dext(out, out, 0, 32); in GenCas()
1593 __ Dsubu(out, out, expected); // If we didn't get the 'expected' in GenCas()
1594 __ Sltiu(out, out, 1); // value, set 'out' to false, and in GenCas()
1595 __ Beqzc(out, &exit_loop); // return. in GenCas()
1596 __ Move(out, value); // Use 'out' for the 'store conditional' instruction. in GenCas()
1602 __ Scd(out, TMP); in GenCas()
1604 __ Sc(out, TMP); in GenCas()
1606 __ Beqzc(out, &loop_head); // If we couldn't do the read-modify-write in GenCas()
1608 __ Bind(&exit_loop); in GenCas()
1609 __ Sync(0); in GenCas()
1612 __ UnpoisonHeapReference(expected); in GenCas()
1616 __ UnpoisonHeapReference(value); in GenCas()
1680 __ Beqzc(argument, slow_path->GetEntryLabel()); in VisitStringCompareTo()
1683 __ Bind(slow_path->GetExitLabel()); in VisitStringCompareTo()
1731 __ LoadConst64(out, 1); in VisitStringEquals()
1738 __ Beqzc(arg, &return_false); in VisitStringEquals()
1742 __ Beqc(str, arg, &return_true); in VisitStringEquals()
1749 __ Lw(temp1, str, class_offset); in VisitStringEquals()
1750 __ Lw(temp2, arg, class_offset); in VisitStringEquals()
1751 __ Bnec(temp1, temp2, &return_false); in VisitStringEquals()
1755 __ Lw(temp1, str, count_offset); in VisitStringEquals()
1756 __ Lw(temp2, arg, count_offset); in VisitStringEquals()
1759 __ Bnec(temp1, temp2, &return_false); in VisitStringEquals()
1763 __ Beqzc(temp1, &return_true); in VisitStringEquals()
1766 __ Move(TMP, str); in VisitStringEquals()
1767 __ Move(temp3, arg); in VisitStringEquals()
1775 __ Dext(temp2, temp1, 0, 1); // Extract compression flag. in VisitStringEquals()
1776 __ Srl(temp1, temp1, 1); // Extract length. in VisitStringEquals()
1777 __ Sllv(temp1, temp1, temp2); // Double the byte count if uncompressed. in VisitStringEquals()
1782 __ Bind(&loop); in VisitStringEquals()
1783 __ Ld(out, TMP, value_offset); in VisitStringEquals()
1784 __ Ld(temp2, temp3, value_offset); in VisitStringEquals()
1785 __ Bnec(out, temp2, &return_false); in VisitStringEquals()
1786 __ Daddiu(TMP, TMP, 8); in VisitStringEquals()
1787 __ Daddiu(temp3, temp3, 8); in VisitStringEquals()
1789 __ Addiu(temp1, temp1, mirror::kUseStringCompression ? -8 : -4); in VisitStringEquals()
1790 __ Bgtzc(temp1, &loop); in VisitStringEquals()
1794 __ Bind(&return_true); in VisitStringEquals()
1795 __ LoadConst64(out, 1); in VisitStringEquals()
1796 __ Bc(&end); in VisitStringEquals()
1799 __ Bind(&return_false); in VisitStringEquals()
1800 __ LoadConst64(out, 0); in VisitStringEquals()
1801 __ Bind(&end); in VisitStringEquals()
1826 __ Bc(slow_path->GetEntryLabel()); in GenerateStringIndexOf()
1827 __ Bind(slow_path->GetExitLabel()); in GenerateStringIndexOf()
1832 __ LoadConst32(tmp_reg, std::numeric_limits<uint16_t>::max()); in GenerateStringIndexOf()
1835 __ Bltuc(tmp_reg, char_reg, slow_path->GetEntryLabel()); // UTF-16 required in GenerateStringIndexOf()
1841 __ Clear(tmp_reg); in GenerateStringIndexOf()
1848 __ Bind(slow_path->GetExitLabel()); in GenerateStringIndexOf()
1914 __ Beqzc(byte_array, slow_path->GetEntryLabel()); in VisitStringNewStringFromBytes()
1918 __ Bind(slow_path->GetExitLabel()); in VisitStringNewStringFromBytes()
1963 __ Beqzc(string_to_copy, slow_path->GetEntryLabel()); in VisitStringNewStringFromString()
1967 __ Bind(slow_path->GetExitLabel()); in VisitStringNewStringFromString()
1977 __ ClassD(FTMP, in); in GenIsInfinite()
1979 __ ClassS(FTMP, in); in GenIsInfinite()
1981 __ Mfc1(out, FTMP); in GenIsInfinite()
1982 __ Andi(out, out, kPositiveInfinity | kNegativeInfinity); in GenIsInfinite()
1983 __ Sltu(out, ZERO, out); in GenIsInfinite()
2048 __ Beqc(srcEnd, srcBegin, &done); // No characters to move. in VisitStringGetCharsNoCheck()
2051 __ Dsubu(numChrs, srcEnd, srcBegin); in VisitStringGetCharsNoCheck()
2054 __ Daddiu(dstPtr, dstObj, data_offset); in VisitStringGetCharsNoCheck()
2055 __ Dlsa(dstPtr, dstBegin, dstPtr, char_shift); in VisitStringGetCharsNoCheck()
2061 __ LoadFromOffset(kLoadWord, TMP, srcObj, count_offset); in VisitStringGetCharsNoCheck()
2062 __ Dext(TMP, TMP, 0, 1); in VisitStringGetCharsNoCheck()
2065 __ Bnezc(TMP, &uncompressed_copy); in VisitStringGetCharsNoCheck()
2068 __ Daddu(srcPtr, srcObj, srcBegin); in VisitStringGetCharsNoCheck()
2069 __ Bind(&compressed_loop); in VisitStringGetCharsNoCheck()
2070 __ LoadFromOffset(kLoadUnsignedByte, TMP, srcPtr, value_offset); in VisitStringGetCharsNoCheck()
2071 __ StoreToOffset(kStoreHalfword, TMP, dstPtr, 0); in VisitStringGetCharsNoCheck()
2072 __ Daddiu(numChrs, numChrs, -1); in VisitStringGetCharsNoCheck()
2073 __ Daddiu(srcPtr, srcPtr, 1); in VisitStringGetCharsNoCheck()
2074 __ Daddiu(dstPtr, dstPtr, 2); in VisitStringGetCharsNoCheck()
2075 __ Bnezc(numChrs, &compressed_loop); in VisitStringGetCharsNoCheck()
2077 __ Bc(&done); in VisitStringGetCharsNoCheck()
2078 __ Bind(&uncompressed_copy); in VisitStringGetCharsNoCheck()
2082 __ Daddiu(srcPtr, srcObj, value_offset); in VisitStringGetCharsNoCheck()
2083 __ Dlsa(srcPtr, srcBegin, srcPtr, char_shift); in VisitStringGetCharsNoCheck()
2085 __ Bind(&loop); in VisitStringGetCharsNoCheck()
2086 __ Lh(AT, srcPtr, 0); in VisitStringGetCharsNoCheck()
2087 __ Daddiu(numChrs, numChrs, -1); in VisitStringGetCharsNoCheck()
2088 __ Daddiu(srcPtr, srcPtr, char_size); in VisitStringGetCharsNoCheck()
2089 __ Sh(AT, dstPtr, 0); in VisitStringGetCharsNoCheck()
2090 __ Daddiu(dstPtr, dstPtr, char_size); in VisitStringGetCharsNoCheck()
2091 __ Bnezc(numChrs, &loop); in VisitStringGetCharsNoCheck()
2093 __ Bind(&done); in VisitStringGetCharsNoCheck()
2145 __ Slti(TMP, length_input_minus_pos, length_constant); in EnoughItems()
2146 __ Bnezc(TMP, slow_path->GetEntryLabel()); in EnoughItems()
2148 __ LoadConst32(TMP, length_constant); in EnoughItems()
2149 __ Bltc(length_input_minus_pos, TMP, slow_path->GetEntryLabel()); in EnoughItems()
2152 __ Bltc(length_input_minus_pos, length.AsRegister<GpuRegister>(), slow_path->GetEntryLabel()); in EnoughItems()
2171 __ LoadFromOffset(kLoadWord, AT, input, length_offset); in CheckPosition()
2176 __ LoadFromOffset(kLoadWord, AT, input, length_offset); in CheckPosition()
2178 __ Addiu32(AT, AT, -pos_const); in CheckPosition()
2179 __ Bltzc(AT, slow_path->GetEntryLabel()); in CheckPosition()
2187 __ Bnezc(pos_reg, slow_path->GetEntryLabel()); in CheckPosition()
2191 __ Bltzc(pos_reg, slow_path->GetEntryLabel()); in CheckPosition()
2194 __ LoadFromOffset(kLoadWord, AT, input, length_offset); in CheckPosition()
2195 __ Subu(AT, AT, pos_reg); in CheckPosition()
2196 __ Bltzc(AT, slow_path->GetEntryLabel()); in CheckPosition()
2223 __ Beqc(src, dest, slow_path->GetEntryLabel()); in VisitSystemArrayCopyChar()
2226 __ Beqzc(src, slow_path->GetEntryLabel()); in VisitSystemArrayCopyChar()
2229 __ Beqzc(dest, slow_path->GetEntryLabel()); in VisitSystemArrayCopyChar()
2233 __ LoadConst32(count, length.GetConstant()->AsIntConstant()->GetValue()); in VisitSystemArrayCopyChar()
2237 __ Bltzc(length.AsRegister<GpuRegister>(), slow_path->GetEntryLabel()); in VisitSystemArrayCopyChar()
2239 __ Move(count, length.AsRegister<GpuRegister>()); in VisitSystemArrayCopyChar()
2249 __ Beqzc(count, slow_path->GetExitLabel()); in VisitSystemArrayCopyChar()
2264 __ Daddiu64(src_base, src, data_offset + char_size * src_pos_const, TMP); in VisitSystemArrayCopyChar()
2266 __ Daddiu64(src_base, src, data_offset, TMP); in VisitSystemArrayCopyChar()
2267 __ Dlsa(src_base, src_pos.AsRegister<GpuRegister>(), src_base, char_shift); in VisitSystemArrayCopyChar()
2272 __ Daddiu64(dest_base, dest, data_offset + char_size * dest_pos_const, TMP); in VisitSystemArrayCopyChar()
2274 __ Daddiu64(dest_base, dest, data_offset, TMP); in VisitSystemArrayCopyChar()
2275 __ Dlsa(dest_base, dest_pos.AsRegister<GpuRegister>(), dest_base, char_shift); in VisitSystemArrayCopyChar()
2278 __ Bind(&loop); in VisitSystemArrayCopyChar()
2279 __ Lh(TMP, src_base, 0); in VisitSystemArrayCopyChar()
2280 __ Daddiu(src_base, src_base, char_size); in VisitSystemArrayCopyChar()
2281 __ Daddiu(count, count, -1); in VisitSystemArrayCopyChar()
2282 __ Sh(TMP, dest_base, 0); in VisitSystemArrayCopyChar()
2283 __ Daddiu(dest_base, dest_base, char_size); in VisitSystemArrayCopyChar()
2284 __ Bnezc(count, &loop); in VisitSystemArrayCopyChar()
2286 __ Bind(slow_path->GetExitLabel()); in VisitSystemArrayCopyChar()
2298 __ Dclz(TMP, in); in GenHighestOneBit()
2299 __ LoadConst64(AT, INT64_C(0x8000000000000000)); in GenHighestOneBit()
2300 __ Dsrlv(AT, AT, TMP); in GenHighestOneBit()
2302 __ Clz(TMP, in); in GenHighestOneBit()
2303 __ LoadConst32(AT, 0x80000000); in GenHighestOneBit()
2304 __ Srlv(AT, AT, TMP); in GenHighestOneBit()
2312 __ And(out, AT, in); in GenHighestOneBit()
2342 __ Dsubu(TMP, ZERO, in); in GenLowestOneBit()
2344 __ Subu(TMP, ZERO, in); in GenLowestOneBit()
2346 __ And(out, TMP, in); in GenLowestOneBit()
2590 #undef __