Searched defs:double_scratch (Results 1 - 17 of 17) sorted by relevance

/external/v8/src/crankshaft/arm64/
H A Dlithium-codegen-arm64.h108 DoubleRegister double_scratch() { return crankshaft_fp_scratch; } function in class:v8::internal::LCodeGen
/external/v8/src/arm/
H A Dcode-stubs-arm.cc98 LowDwVfpRegister double_scratch = kScratchDoubleReg; local
104 __ vldr(double_scratch, MemOperand(input_reg, double_offset));
105 __ vmov(scratch_low, scratch_high, double_scratch);
108 __ vcvt_s32_f64(double_scratch.low(), double_scratch);
109 __ vmov(result_reg, double_scratch.low());
707 const DwVfpRegister double_scratch = d3; local
757 __ vcvt_f64_u32(double_scratch, single_scratch);
758 __ VFPCompareAndSetFlags(double_scratch, double_exponent);
768 __ vmov(double_scratch, 0.
[all...]
/external/v8/src/arm64/
H A Dcode-stubs-arm64.cc85 DoubleRegister double_scratch = d0; // only used if !skip_fastpath() local
95 __ Push(double_scratch);
97 __ Ldr(double_scratch, MemOperand(input, double_offset));
100 __ TryConvertDoubleToInt64(result, double_scratch, &done);
101 __ Fmov(result, double_scratch);
146 __ Pop(double_scratch);
156 FPRegister double_scratch,
231 __ Ldr(double_scratch, FieldMemOperand(right, HeapNumber::kValueOffset));
232 __ Fcmp(double_scratch, double_scratch);
154 EmitIdenticalObjectComparison(MacroAssembler* masm, Register left, Register right, Register scratch, FPRegister double_scratch, Label* slow, Condition cond) argument
[all...]
/external/v8/src/ia32/
H A Dcode-stubs-ia32.cc337 const XMMRegister double_scratch = xmm4; local
388 __ DoubleToI(exponent, double_exponent, double_scratch,
406 // Load double_scratch with 0.5.
408 __ movd(double_scratch, scratch);
409 __ cvtss2sd(double_scratch, double_scratch);
411 __ ucomisd(double_scratch, double_exponent);
419 __ movd(double_scratch, scratch);
420 __ cvtss2sd(double_scratch, double_scratch);
[all...]
/external/v8/src/mips/
H A Dcode-stubs-mips.cc101 DoubleRegister double_scratch = kLithiumScratchDouble; local
107 __ ldc1(double_scratch, MemOperand(input_reg, double_offset));
114 __ Trunc_w_d(double_scratch, double_scratch);
116 __ mfc1(scratch3, double_scratch);
771 const DoubleRegister double_scratch = f6; local
820 double_scratch,
832 __ Move(double_scratch, 0.5);
838 double_scratch);
839 // double_scratch ca
[all...]
H A Dmacro-assembler-mips.cc2632 DoubleRegister double_scratch,
2636 DCHECK(!double_input.is(double_scratch));
2645 cvt_w_d(double_scratch, double_input);
2646 mfc1(result, double_scratch);
2647 cvt_d_w(double_scratch, double_scratch);
2648 BranchF(&done, NULL, eq, double_input, double_scratch);
2665 Round_w_d(double_scratch, double_input);
2668 Trunc_w_d(double_scratch, double_input);
2671 Ceil_w_d(double_scratch, double_inpu
4753 DoubleRegister double_scratch = f2; local
[all...]
/external/v8/src/mips64/
H A Dcode-stubs-mips64.cc100 DoubleRegister double_scratch = kLithiumScratchDouble; local
105 __ ldc1(double_scratch, MemOperand(input_reg, double_offset));
112 __ Trunc_w_d(double_scratch, double_scratch);
114 __ mfc1(scratch3, double_scratch);
768 const DoubleRegister double_scratch = f6; local
817 double_scratch,
830 __ Move(double_scratch, 0.5);
836 double_scratch);
837 // double_scratch ca
[all...]
/external/v8/src/ppc/
H A Dcode-stubs-ppc.cc92 DoubleRegister double_scratch = kScratchDoubleReg; local
100 __ lfd(double_scratch, MemOperand(input_reg, double_offset));
103 __ ConvertDoubleToInt64(double_scratch,
745 const DoubleRegister double_scratch = d0; local
790 double_scratch);
800 __ LoadDoubleLiteral(double_scratch, 0.5, scratch);
801 __ fcmpu(double_exponent, double_scratch);
806 __ LoadDoubleLiteral(double_scratch, -V8_INFINITY, scratch);
807 __ fcmpu(double_base, double_scratch);
809 __ fneg(double_result, double_scratch);
[all...]
H A Dmacro-assembler-ppc.cc2245 Register scratch1, DoubleRegister double_scratch, Label* fail,
2257 lfd(double_scratch, FieldMemOperand(value_reg, HeapNumber::kValueOffset));
2259 CanonicalizeNaN(double_scratch);
2263 SmiToDouble(double_scratch, value_reg);
2268 stfd(double_scratch, FieldMemOperand(scratch1, FixedDoubleArray::kHeaderSize -
2516 DoubleRegister double_scratch) {
2517 TryDoubleToInt32Exact(scratch1, double_input, scratch2, double_scratch);
2559 DoubleRegister double_scratch) {
2561 DCHECK(!double_input.is(double_scratch));
2567 result, double_scratch);
2192 STATIC_ASSERT(Map::kInstanceTypeOffset < 4096); STATIC_ASSERT(LAST_TYPE < 256); lbz(type_reg, FieldMemOperand(map, Map::kInstanceTypeOffset)); cmpi(type_reg, Operand(type)); } void MacroAssembler::CompareRoot(Register obj, Heap::RootListIndex index) { DCHECK(!obj.is(r0)); LoadRoot(r0, index); cmp(obj, r0); } void MacroAssembler::CheckFastElements(Register map, Register scratch, Label* fail) { STATIC_ASSERT(FAST_SMI_ELEMENTS == 0); STATIC_ASSERT(FAST_HOLEY_SMI_ELEMENTS == 1); STATIC_ASSERT(FAST_ELEMENTS == 2); STATIC_ASSERT(FAST_HOLEY_ELEMENTS == 3); lbz(scratch, FieldMemOperand(map, Map::kBitField2Offset)); STATIC_ASSERT(Map::kMaximumBitField2FastHoleyElementValue < 0x8000); cmpli(scratch, Operand(Map::kMaximumBitField2FastHoleyElementValue)); bgt(fail); } void MacroAssembler::CheckFastObjectElements(Register map, Register scratch, Label* fail) { STATIC_ASSERT(FAST_SMI_ELEMENTS == 0); STATIC_ASSERT(FAST_HOLEY_SMI_ELEMENTS == 1); STATIC_ASSERT(FAST_ELEMENTS == 2); STATIC_ASSERT(FAST_HOLEY_ELEMENTS == 3); lbz(scratch, FieldMemOperand(map, Map::kBitField2Offset)); cmpli(scratch, Operand(Map::kMaximumBitField2FastHoleySmiElementValue)); ble(fail); cmpli(scratch, Operand(Map::kMaximumBitField2FastHoleyElementValue)); bgt(fail); } void MacroAssembler::CheckFastSmiElements(Register map, Register scratch, Label* fail) { STATIC_ASSERT(FAST_SMI_ELEMENTS == 0); STATIC_ASSERT(FAST_HOLEY_SMI_ELEMENTS == 1); lbz(scratch, FieldMemOperand(map, Map::kBitField2Offset)); cmpli(scratch, Operand(Map::kMaximumBitField2FastHoleySmiElementValue)); bgt(fail); } void MacroAssembler::StoreNumberToDoubleElements( Register value_reg, Register key_reg, Register elements_reg, Register scratch1, DoubleRegister double_scratch, Label* fail, int elements_offset) { DCHECK(!AreAliased(value_reg, key_reg, elements_reg, scratch1)); Label smi_value, store; JumpIfSmi(value_reg, &smi_value); CheckMap(value_reg, scratch1, isolate()->factory()->heap_number_map(), fail, DONT_DO_SMI_CHECK); lfd(double_scratch, FieldMemOperand(value_reg, HeapNumber::kValueOffset)); CanonicalizeNaN(double_scratch); b(&store); bind(&smi_value); SmiToDouble(double_scratch, value_reg); bind(&store); SmiToDoubleArrayOffset(scratch1, key_reg); add(scratch1, elements_reg, scratch1); stfd(double_scratch, FieldMemOperand(scratch1, FixedDoubleArray::kHeaderSize - elements_offset)); } void MacroAssembler::AddAndCheckForOverflow(Register dst, Register left, Register right, Register overflow_dst, Register scratch) { DCHECK(!dst.is(overflow_dst)); DCHECK(!dst.is(scratch)); DCHECK(!overflow_dst.is(scratch)); DCHECK(!overflow_dst.is(left)); DCHECK(!overflow_dst.is(right)); bool left_is_right = left.is(right); RCBit xorRC = left_is_right ? SetRC : LeaveRC; if (dst.is(left)) { mr(scratch, left); add(dst, left, right); xor_(overflow_dst, dst, scratch, xorRC); if (!left_is_right) xor_(scratch, dst, right); } else if (dst.is(right)) { mr(scratch, right); add(dst, left, right); xor_(overflow_dst, dst, left, xorRC); if (!left_is_right) xor_(scratch, dst, scratch); } else { add(dst, left, right); xor_(overflow_dst, dst, left, xorRC); if (!left_is_right) xor_(scratch, dst, right); } if (!left_is_right) and_(overflow_dst, scratch, overflow_dst, SetRC); } void MacroAssembler::AddAndCheckForOverflow(Register dst, Register left, intptr_t right, Register overflow_dst, Register scratch) { Register original_left = left; DCHECK(!dst.is(overflow_dst)); DCHECK(!dst.is(scratch)); DCHECK(!overflow_dst.is(scratch)); DCHECK(!overflow_dst.is(left)); if (dst.is(left)) { original_left = overflow_dst; mr(original_left, left); } Add(dst, left, right, scratch); xor_(overflow_dst, dst, original_left); if (right >= 0) argument
2514 TestDoubleIsInt32(DoubleRegister double_input, Register scratch1, Register scratch2, DoubleRegister double_scratch) argument
2556 TryDoubleToInt32Exact(Register result, DoubleRegister double_input, Register scratch, DoubleRegister double_scratch) argument
2583 TryInt32Floor(Register result, DoubleRegister double_input, Register input_high, Register scratch, DoubleRegister double_scratch, Label* done, Label* exact) argument
2626 DoubleRegister double_scratch = kScratchDoubleReg; local
2672 DoubleRegister double_scratch = kScratchDoubleReg; local
3745 ClampDoubleToUint8(Register result_reg, DoubleRegister input_reg, DoubleRegister double_scratch) argument
[all...]
/external/v8/src/s390/
H A Dcode-stubs-s390.cc90 DoubleRegister double_scratch = kScratchDoubleReg; local
98 __ LoadDouble(double_scratch, MemOperand(input_reg, double_offset));
101 __ ConvertDoubleToInt64(double_scratch,
722 const DoubleRegister double_scratch = d0; local
767 double_scratch);
777 __ LoadDoubleLiteral(double_scratch, 0.5, scratch);
778 __ cdbr(double_exponent, double_scratch);
783 __ LoadDoubleLiteral(double_scratch, -V8_INFINITY, scratch);
784 __ cdbr(double_base, double_scratch);
786 __ lcdbr(double_result, double_scratch);
[all...]
H A Dmacro-assembler-s390.cc2150 Register scratch1, DoubleRegister double_scratch, Label* fail,
2162 LoadDouble(double_scratch,
2165 CanonicalizeNaN(double_scratch);
2169 SmiToDouble(double_scratch, value_reg);
2173 StoreDouble(double_scratch,
2390 DoubleRegister double_scratch) {
2391 TryDoubleToInt32Exact(scratch1, double_input, scratch2, double_scratch);
2426 DoubleRegister double_scratch) {
2428 DCHECK(!double_input.is(double_scratch));
2434 result, double_scratch);
2388 TestDoubleIsInt32(DoubleRegister double_input, Register scratch1, Register scratch2, DoubleRegister double_scratch) argument
2423 TryDoubleToInt32Exact(Register result, DoubleRegister double_input, Register scratch, DoubleRegister double_scratch) argument
2450 TryInt32Floor(Register result, DoubleRegister double_input, Register input_high, Register scratch, DoubleRegister double_scratch, Label* done, Label* exact) argument
2497 DoubleRegister double_scratch = kScratchDoubleReg; local
2540 DoubleRegister double_scratch = kScratchDoubleReg; local
3483 ClampDoubleToUint8(Register result_reg, DoubleRegister input_reg, DoubleRegister double_scratch) argument
[all...]
/external/v8/src/x64/
H A Dcode-stubs-x64.cc222 const XMMRegister double_scratch = xmm4; local
272 __ DoubleToI(exponent, double_exponent, double_scratch,
290 // Load double_scratch with 0.5.
292 __ Movq(double_scratch, scratch);
294 __ Ucomisd(double_scratch, double_exponent);
302 __ Movq(double_scratch, scratch);
303 __ Ucomisd(double_scratch, double_base);
311 __ Subsd(double_result, double_scratch);
316 __ Xorpd(double_scratch, double_scratch);
[all...]
/external/v8/src/crankshaft/arm/
H A Dlithium-codegen-arm.cc3985 DwVfpRegister double_scratch = double_scratch0(); local
4009 __ VFPCanonicalizeNaN(double_scratch, value);
4010 __ vstr(double_scratch, scratch, 0);
4651 LowDwVfpRegister double_scratch = double_scratch0(); local
4704 __ TryDoubleToInt32Exact(input_reg, double_scratch2, double_scratch);
4774 LowDwVfpRegister double_scratch = double_scratch0(); local
4779 __ TryDoubleToInt32Exact(result_reg, double_input, double_scratch);
4799 LowDwVfpRegister double_scratch = double_scratch0(); local
4804 __ TryDoubleToInt32Exact(result_reg, double_input, double_scratch);
/external/v8/src/crankshaft/mips/
H A Dlithium-codegen-mips.cc3919 DoubleRegister double_scratch = double_scratch0(); local
3951 __ ldc1(double_scratch,
3953 __ sdc1(double_scratch, MemOperand(scratch, 0));
4593 DoubleRegister double_scratch = double_scratch0(); local
4644 __ ldc1(double_scratch,
4650 double_scratch,
4662 __ Mfhc1(scratch1, double_scratch);
/external/v8/src/crankshaft/mips64/
H A Dlithium-codegen-mips64.cc4137 DoubleRegister double_scratch = double_scratch0(); local
4167 __ FPUCanonicalizeNaN(double_scratch, value);
4168 __ sdc1(double_scratch, MemOperand(scratch, 0));
4797 DoubleRegister double_scratch = double_scratch0(); local
4848 __ ldc1(double_scratch,
4854 double_scratch,
4866 __ mfhc1(scratch1, double_scratch); // Get exponent/sign bits.
/external/v8/src/crankshaft/ppc/
H A Dlithium-codegen-ppc.cc4243 DoubleRegister double_scratch = double_scratch0(); local
4273 __ CanonicalizeNaN(double_scratch, value);
4274 __ stfd(double_scratch, MemOperand(elements, base_offset));
4912 DoubleRegister double_scratch = double_scratch0(); local
4965 double_scratch);
5033 DoubleRegister double_scratch = double_scratch0(); local
5039 double_scratch);
5058 DoubleRegister double_scratch = double_scratch0(); local
5064 double_scratch);
/external/v8/src/crankshaft/s390/
H A Dlithium-codegen-s390.cc4145 DoubleRegister double_scratch = double_scratch0(); local
4186 __ CanonicalizeNaN(double_scratch, value);
4189 __ std(double_scratch, MemOperand(scratch, elements, address_offset));
4191 __ std(double_scratch, MemOperand(elements, address_offset));
4827 DoubleRegister double_scratch = double_scratch0(); local
4877 double_scratch);
4942 DoubleRegister double_scratch = double_scratch0(); local
4948 double_scratch);
4966 DoubleRegister double_scratch = double_scratch0(); local
4972 double_scratch);
[all...]

Completed in 209 milliseconds