Home | History | Annotate | Download | only in mips

Lines Matching refs:HeapNumber

537   STATIC_ASSERT(HeapNumber::kSignMask == 0x80000000u);
538 __ And(exponent, source_, Operand(HeapNumber::kSignMask));
550 HeapNumber::kExponentBias << HeapNumber::kExponentShift;
564 __ li(mantissa, Operand(31 + HeapNumber::kExponentBias));
566 __ sll(mantissa, mantissa, HeapNumber::kExponentShift);
574 __ sll(mantissa, source_, HeapNumber::kMantissaBitsInTopWord);
576 __ srl(source_, source_, 32 - HeapNumber::kMantissaBitsInTopWord);
639 HeapNumber::kExponentShift,
640 HeapNumber::kExponentBits);
643 __ Subu(scratch, result_reg, HeapNumber::kExponentMask);
650 Operand(HeapNumber::kExponentBias + HeapNumber::kMantissaBits + 31));
659 const int kShiftBase = HeapNumber::kNonMantissaBitsInTopWord - 1;
661 __ Addu(scratch, result_reg, Operand(kShiftBase + HeapNumber::kMantissaBits));
666 __ And(sign, input_high, Operand(HeapNumber::kSignMask));
679 Operand(1 << HeapNumber::kMantissaBitsInTopWord));
731 STATIC_ASSERT(HeapNumber::kSignMask == 0x80000000u);
739 (HeapNumber::kExponentBias + 30) << HeapNumber::kExponentShift;
750 ASSERT(((1 << HeapNumber::kExponentShift) & non_smi_exponent) != 0);
751 const int shift_distance = HeapNumber::kNonMantissaBitsInTopWord - 2;
755 HeapNumber::kExponentOffset));
759 HeapNumber::kMantissaOffset));
766 non_smi_exponent += 1 << HeapNumber::kExponentShift;
767 __ li(scratch_, Operand(HeapNumber::kSignMask | non_smi_exponent));
769 FieldMemOperand(the_heap_number_, HeapNumber::kExponentOffset));
773 FieldMemOperand(the_heap_number_, HeapNumber::kMantissaOffset));
789 __ li(exp_mask_reg, Operand(HeapNumber::kExponentMask));
846 __ lw(t2, FieldMemOperand(a0, HeapNumber::kExponentOffset));
853 __ sll(t2, t2, HeapNumber::kNonMantissaBitsInTopWord);
855 __ lw(t3, FieldMemOperand(a0, HeapNumber::kMantissaOffset));
909 __ ldc1(f12, FieldMemOperand(lhs, HeapNumber::kValueOffset));
933 __ ldc1(f14, FieldMemOperand(rhs, HeapNumber::kValueOffset));
990 __ ldc1(f12, FieldMemOperand(lhs, HeapNumber::kValueOffset));
991 __ ldc1(f14, FieldMemOperand(rhs, HeapNumber::kValueOffset));
1092 // be strictly equal if the other is a HeapNumber.
1305 // Check if input is a HeapNumber.
1311 // Input is a HeapNumber. Store the
1313 __ lw(a2, FieldMemOperand(a0, HeapNumber::kValueOffset));
1314 __ lw(a3, FieldMemOperand(a0, HeapNumber::kValueOffset + 4));
1382 __ ldc1(f4, FieldMemOperand(t2, HeapNumber::kValueOffset));
1412 __ sdc1(f4, FieldMemOperand(t2, HeapNumber::kValueOffset));
1426 __ sdc1(f4, FieldMemOperand(a0, HeapNumber::kValueOffset));
1432 __ ldc1(f4, FieldMemOperand(v0, HeapNumber::kValueOffset));
1447 // Allocate an aligned object larger than a HeapNumber.
1448 ASSERT(4 * kPointerSize >= HeapNumber::kSize);
1515 const Register heapnumber = v0;
1539 __ ldc1(double_base, FieldMemOperand(base, HeapNumber::kValueOffset));
1552 FieldMemOperand(exponent, HeapNumber::kValueOffset));
1558 FieldMemOperand(exponent, HeapNumber::kValueOffset));
1700 heapnumber, scratch, scratch2, heapnumbermap, &call_runtime);
1702 FieldMemOperand(heapnumber, HeapNumber::kValueOffset));
1703 ASSERT(heapnumber.is(v0));
4891 __ ldc1(f2, MemOperand(a2, HeapNumber::kValueOffset));
4904 __ ldc1(f0, MemOperand(a2, HeapNumber::kValueOffset));