Home | History | Annotate | Download | only in mips

Lines Matching refs:HeapNumber

595   STATIC_ASSERT(HeapNumber::kSignMask == 0x80000000u);
596 __ And(exponent, source_, Operand(HeapNumber::kSignMask));
608 HeapNumber::kExponentBias << HeapNumber::kExponentShift;
622 __ li(mantissa, Operand(31 + HeapNumber::kExponentBias));
624 __ sll(mantissa, mantissa, HeapNumber::kExponentShift);
632 __ sll(mantissa, source_, HeapNumber::kMantissaBitsInTopWord);
634 __ srl(source_, source_, 32 - HeapNumber::kMantissaBitsInTopWord);
681 // Load the double from tagged HeapNumber to double register.
683 // ARM uses a workaround here because of the unaligned HeapNumber
686 __ ldc1(dst, FieldMemOperand(object, HeapNumber::kValueOffset));
690 __ lw(dst1, FieldMemOperand(object, HeapNumber::kValueOffset));
692 HeapNumber::kValueOffset + kPointerSize));
725 __ lw(scratch1, FieldMemOperand(object, HeapNumber::kMapOffset));
736 __ lw(scratch1, FieldMemOperand(object, HeapNumber::kExponentOffset));
737 __ lw(scratch2, FieldMemOperand(object, HeapNumber::kMantissaOffset));
802 __ ldc1(double_dst, FieldMemOperand(object, HeapNumber::kValueOffset));
851 __ ldc1(double_scratch0, FieldMemOperand(object, HeapNumber::kValueOffset));
912 __ sdc1(f0, FieldMemOperand(heap_number_result, HeapNumber::kValueOffset));
915 __ sw(v1, FieldMemOperand(heap_number_result, HeapNumber::kExponentOffset));
916 __ sw(v0, FieldMemOperand(heap_number_result, HeapNumber::kMantissaOffset));
960 STATIC_ASSERT(HeapNumber::kSignMask == 0x80000000u);
968 (HeapNumber::kExponentBias + 30) << HeapNumber::kExponentShift;
979 ASSERT(((1 << HeapNumber::kExponentShift) & non_smi_exponent) != 0);
980 const int shift_distance = HeapNumber::kNonMantissaBitsInTopWord - 2;
984 HeapNumber::kExponentOffset));
988 HeapNumber::kMantissaOffset));
995 non_smi_exponent += 1 << HeapNumber::kExponentShift;
996 __ li(scratch_, Operand(HeapNumber::kSignMask | non_smi_exponent));
998 FieldMemOperand(the_heap_number_, HeapNumber::kExponentOffset));
1002 FieldMemOperand(the_heap_number_, HeapNumber::kMantissaOffset));
1018 __ li(exp_mask_reg, Operand(HeapNumber::kExponentMask));
1075 __ lw(t2, FieldMemOperand(a0, HeapNumber::kExponentOffset));
1082 __ sll(t2, t2, HeapNumber::kNonMantissaBitsInTopWord);
1084 __ lw(t3, FieldMemOperand(a0, HeapNumber::kMantissaOffset));
1138 __ ldc1(f12, FieldMemOperand(lhs, HeapNumber::kValueOffset));
1162 __ ldc1(f14, FieldMemOperand(rhs, HeapNumber::kValueOffset));
1219 __ ldc1(f12, FieldMemOperand(lhs, HeapNumber::kValueOffset));
1220 __ ldc1(f14, FieldMemOperand(rhs, HeapNumber::kValueOffset));
1308 Operand(HeapNumber::kValueOffset - kHeapObjectTag));
1323 __ ldc1(f12, FieldMemOperand(object, HeapNumber::kValueOffset));
1324 __ ldc1(f14, FieldMemOperand(probe, HeapNumber::kValueOffset));
1420 // be strictly equal if the other is a HeapNumber.
1882 // ARM uses a workaround here because of the unaligned HeapNumber
1885 __ sdc1(f10, FieldMemOperand(result, HeapNumber::kValueOffset));
1996 // ARM uses a workaround here because of the unaligned HeapNumber
1999 __ sdc1(f0, FieldMemOperand(v0, HeapNumber::kValueOffset));
2234 __ And(scratch2, scratch2, HeapNumber::kSignMask);
2255 FieldMemOperand(heap_number_result, HeapNumber::kValueOffset));
2402 FieldMemOperand(heap_number_result, HeapNumber::kValueOffset));
2613 // Check if input is a HeapNumber.
2619 // Input is a HeapNumber. Store the
2621 __ lw(a2, FieldMemOperand(a0, HeapNumber::kValueOffset));
2622 __ lw(a3, FieldMemOperand(a0, HeapNumber::kValueOffset + 4));
2690 __ ldc1(f4, FieldMemOperand(t2, HeapNumber::kValueOffset));
2720 __ sdc1(f4, FieldMemOperand(t2, HeapNumber::kValueOffset));
2734 __ sdc1(f4, FieldMemOperand(a0, HeapNumber::kValueOffset));
2740 __ ldc1(f4, FieldMemOperand(v0, HeapNumber::kValueOffset));
2755 // Allocate an aligned object larger than a HeapNumber.
2756 ASSERT(4 * kPointerSize >= HeapNumber::kSize);
2833 const Register heapnumber = v0;
2857 __ ldc1(double_base, FieldMemOperand(base, HeapNumber::kValueOffset));
2870 FieldMemOperand(exponent, HeapNumber::kValueOffset));
2876 FieldMemOperand(exponent, HeapNumber::kValueOffset));
3018 heapnumber, scratch, scratch2, heapnumbermap, &call_runtime);
3020 FieldMemOperand(heapnumber, HeapNumber::kValueOffset));
3021 ASSERT(heapnumber.is(v0));
6262 __ ldc1(f2, MemOperand(a2, HeapNumber::kValueOffset));
6275 __ ldc1(f0, MemOperand(a2, HeapNumber::kValueOffset));