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 #ifndef V8_CRANKSHAFT_MIPS_LITHIUM_MIPS_H_ | 5 #ifndef V8_CRANKSHAFT_MIPS_LITHIUM_MIPS_H_ |
6 #define V8_CRANKSHAFT_MIPS_LITHIUM_MIPS_H_ | 6 #define V8_CRANKSHAFT_MIPS_LITHIUM_MIPS_H_ |
7 | 7 |
8 #include "src/crankshaft/hydrogen.h" | 8 #include "src/crankshaft/hydrogen.h" |
9 #include "src/crankshaft/lithium.h" | 9 #include "src/crankshaft/lithium.h" |
10 #include "src/crankshaft/lithium-allocator.h" | 10 #include "src/crankshaft/lithium-allocator.h" |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
46 V(CompareNumericAndBranch) \ | 46 V(CompareNumericAndBranch) \ |
47 V(CmpObjectEqAndBranch) \ | 47 V(CmpObjectEqAndBranch) \ |
48 V(CmpHoleAndBranch) \ | 48 V(CmpHoleAndBranch) \ |
49 V(CmpMapAndBranch) \ | 49 V(CmpMapAndBranch) \ |
50 V(CmpT) \ | 50 V(CmpT) \ |
51 V(ConstantD) \ | 51 V(ConstantD) \ |
52 V(ConstantE) \ | 52 V(ConstantE) \ |
53 V(ConstantI) \ | 53 V(ConstantI) \ |
54 V(ConstantS) \ | 54 V(ConstantS) \ |
55 V(ConstantT) \ | 55 V(ConstantT) \ |
56 V(ConstructDouble) \ | |
57 V(Context) \ | 56 V(Context) \ |
58 V(DebugBreak) \ | 57 V(DebugBreak) \ |
59 V(DeclareGlobals) \ | 58 V(DeclareGlobals) \ |
60 V(Deoptimize) \ | 59 V(Deoptimize) \ |
61 V(DivByConstI) \ | 60 V(DivByConstI) \ |
62 V(DivByPowerOf2I) \ | 61 V(DivByPowerOf2I) \ |
63 V(DivI) \ | 62 V(DivI) \ |
64 V(DoubleToI) \ | 63 V(DoubleToI) \ |
65 V(DoubleBits) \ | 64 V(DoubleBits) \ |
66 V(DoubleToSmi) \ | 65 V(DoubleToSmi) \ |
(...skipping 2232 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2299 inputs_[0] = value; | 2298 inputs_[0] = value; |
2300 } | 2299 } |
2301 | 2300 |
2302 LOperand* value() { return inputs_[0]; } | 2301 LOperand* value() { return inputs_[0]; } |
2303 | 2302 |
2304 DECLARE_CONCRETE_INSTRUCTION(DoubleBits, "double-bits") | 2303 DECLARE_CONCRETE_INSTRUCTION(DoubleBits, "double-bits") |
2305 DECLARE_HYDROGEN_ACCESSOR(DoubleBits) | 2304 DECLARE_HYDROGEN_ACCESSOR(DoubleBits) |
2306 }; | 2305 }; |
2307 | 2306 |
2308 | 2307 |
2309 class LConstructDouble final : public LTemplateInstruction<1, 2, 0> { | |
2310 public: | |
2311 LConstructDouble(LOperand* hi, LOperand* lo) { | |
2312 inputs_[0] = hi; | |
2313 inputs_[1] = lo; | |
2314 } | |
2315 | |
2316 LOperand* hi() { return inputs_[0]; } | |
2317 LOperand* lo() { return inputs_[1]; } | |
2318 | |
2319 DECLARE_CONCRETE_INSTRUCTION(ConstructDouble, "construct-double") | |
2320 }; | |
2321 | |
2322 | |
2323 class LAllocate final : public LTemplateInstruction<1, 2, 2> { | 2308 class LAllocate final : public LTemplateInstruction<1, 2, 2> { |
2324 public: | 2309 public: |
2325 LAllocate(LOperand* context, | 2310 LAllocate(LOperand* context, |
2326 LOperand* size, | 2311 LOperand* size, |
2327 LOperand* temp1, | 2312 LOperand* temp1, |
2328 LOperand* temp2) { | 2313 LOperand* temp2) { |
2329 inputs_[0] = context; | 2314 inputs_[0] = context; |
2330 inputs_[1] = size; | 2315 inputs_[1] = size; |
2331 temps_[0] = temp1; | 2316 temps_[0] = temp1; |
2332 temps_[1] = temp2; | 2317 temps_[1] = temp2; |
(...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2620 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2605 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
2621 }; | 2606 }; |
2622 | 2607 |
2623 #undef DECLARE_HYDROGEN_ACCESSOR | 2608 #undef DECLARE_HYDROGEN_ACCESSOR |
2624 #undef DECLARE_CONCRETE_INSTRUCTION | 2609 #undef DECLARE_CONCRETE_INSTRUCTION |
2625 | 2610 |
2626 } // namespace internal | 2611 } // namespace internal |
2627 } // namespace v8 | 2612 } // namespace v8 |
2628 | 2613 |
2629 #endif // V8_CRANKSHAFT_MIPS_LITHIUM_MIPS_H_ | 2614 #endif // V8_CRANKSHAFT_MIPS_LITHIUM_MIPS_H_ |
OLD | NEW |