OLD | NEW |
---|---|
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #include "src/code-stubs.h" | 7 #include "src/code-stubs.h" |
8 #include "src/hydrogen-osr.h" | 8 #include "src/hydrogen-osr.h" |
9 #include "src/mips64/lithium-codegen-mips64.h" | 9 #include "src/mips64/lithium-codegen-mips64.h" |
10 #include "src/mips64/lithium-gap-resolver-mips64.h" | 10 #include "src/mips64/lithium-gap-resolver-mips64.h" |
(...skipping 3836 matching lines...) Loading... | |
3847 __ Branch(&done, ne, result, Operand(zero_reg)); | 3847 __ Branch(&done, ne, result, Operand(zero_reg)); |
3848 __ bind(&check_sign_on_zero); | 3848 __ bind(&check_sign_on_zero); |
3849 __ mfhc1(scratch, input); // Get exponent/sign bits. | 3849 __ mfhc1(scratch, input); // Get exponent/sign bits. |
3850 __ And(scratch, scratch, Operand(HeapNumber::kSignMask)); | 3850 __ And(scratch, scratch, Operand(HeapNumber::kSignMask)); |
3851 DeoptimizeIf(ne, instr->environment(), scratch, Operand(zero_reg)); | 3851 DeoptimizeIf(ne, instr->environment(), scratch, Operand(zero_reg)); |
3852 } | 3852 } |
3853 __ bind(&done); | 3853 __ bind(&done); |
3854 } | 3854 } |
3855 | 3855 |
3856 | 3856 |
3857 void LCodeGen::DoMathFround(LMathFround* instr) { | |
3858 DoubleRegister input = ToDoubleRegister(instr->value()); | |
3859 DoubleRegister result = ToDoubleRegister(instr->result()); | |
3860 __ cvt_s_d(result.low(), input); | |
3861 __ cvt_d_s(result, result.low()); | |
paul.l...
2014/07/29 16:54:26
Please remove use of result.low() in both instruct
balazs.kilvady
2014/07/29 18:36:11
Done.
| |
3862 } | |
3863 | |
3864 | |
3857 void LCodeGen::DoMathSqrt(LMathSqrt* instr) { | 3865 void LCodeGen::DoMathSqrt(LMathSqrt* instr) { |
3858 DoubleRegister input = ToDoubleRegister(instr->value()); | 3866 DoubleRegister input = ToDoubleRegister(instr->value()); |
3859 DoubleRegister result = ToDoubleRegister(instr->result()); | 3867 DoubleRegister result = ToDoubleRegister(instr->result()); |
3860 __ sqrt_d(result, input); | 3868 __ sqrt_d(result, input); |
3861 } | 3869 } |
3862 | 3870 |
3863 | 3871 |
3864 void LCodeGen::DoMathPowHalf(LMathPowHalf* instr) { | 3872 void LCodeGen::DoMathPowHalf(LMathPowHalf* instr) { |
3865 DoubleRegister input = ToDoubleRegister(instr->value()); | 3873 DoubleRegister input = ToDoubleRegister(instr->value()); |
3866 DoubleRegister result = ToDoubleRegister(instr->result()); | 3874 DoubleRegister result = ToDoubleRegister(instr->result()); |
(...skipping 2066 matching lines...) Loading... | |
5933 __ li(at, scope_info); | 5941 __ li(at, scope_info); |
5934 __ Push(at, ToRegister(instr->function())); | 5942 __ Push(at, ToRegister(instr->function())); |
5935 CallRuntime(Runtime::kPushBlockContext, 2, instr); | 5943 CallRuntime(Runtime::kPushBlockContext, 2, instr); |
5936 RecordSafepoint(Safepoint::kNoLazyDeopt); | 5944 RecordSafepoint(Safepoint::kNoLazyDeopt); |
5937 } | 5945 } |
5938 | 5946 |
5939 | 5947 |
5940 #undef __ | 5948 #undef __ |
5941 | 5949 |
5942 } } // namespace v8::internal | 5950 } } // namespace v8::internal |
OLD | NEW |