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_X64_LITHIUM_X64_H_ | 5 #ifndef V8_CRANKSHAFT_X64_LITHIUM_X64_H_ |
6 #define V8_CRANKSHAFT_X64_LITHIUM_X64_H_ | 6 #define V8_CRANKSHAFT_X64_LITHIUM_X64_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(DoubleBits) \ | 63 V(DoubleBits) \ |
65 V(DoubleToI) \ | 64 V(DoubleToI) \ |
66 V(DoubleToSmi) \ | 65 V(DoubleToSmi) \ |
(...skipping 2276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2343 inputs_[0] = value; | 2342 inputs_[0] = value; |
2344 } | 2343 } |
2345 | 2344 |
2346 LOperand* value() { return inputs_[0]; } | 2345 LOperand* value() { return inputs_[0]; } |
2347 | 2346 |
2348 DECLARE_CONCRETE_INSTRUCTION(DoubleBits, "double-bits") | 2347 DECLARE_CONCRETE_INSTRUCTION(DoubleBits, "double-bits") |
2349 DECLARE_HYDROGEN_ACCESSOR(DoubleBits) | 2348 DECLARE_HYDROGEN_ACCESSOR(DoubleBits) |
2350 }; | 2349 }; |
2351 | 2350 |
2352 | 2351 |
2353 class LConstructDouble final : public LTemplateInstruction<1, 2, 0> { | |
2354 public: | |
2355 LConstructDouble(LOperand* hi, LOperand* lo) { | |
2356 inputs_[0] = hi; | |
2357 inputs_[1] = lo; | |
2358 } | |
2359 | |
2360 LOperand* hi() { return inputs_[0]; } | |
2361 LOperand* lo() { return inputs_[1]; } | |
2362 | |
2363 DECLARE_CONCRETE_INSTRUCTION(ConstructDouble, "construct-double") | |
2364 }; | |
2365 | |
2366 | |
2367 class LAllocate final : public LTemplateInstruction<1, 2, 1> { | 2352 class LAllocate final : public LTemplateInstruction<1, 2, 1> { |
2368 public: | 2353 public: |
2369 LAllocate(LOperand* context, LOperand* size, LOperand* temp) { | 2354 LAllocate(LOperand* context, LOperand* size, LOperand* temp) { |
2370 inputs_[0] = context; | 2355 inputs_[0] = context; |
2371 inputs_[1] = size; | 2356 inputs_[1] = size; |
2372 temps_[0] = temp; | 2357 temps_[0] = temp; |
2373 } | 2358 } |
2374 | 2359 |
2375 LOperand* context() { return inputs_[0]; } | 2360 LOperand* context() { return inputs_[0]; } |
2376 LOperand* size() { return inputs_[1]; } | 2361 LOperand* size() { return inputs_[1]; } |
(...skipping 290 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2667 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2652 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
2668 }; | 2653 }; |
2669 | 2654 |
2670 #undef DECLARE_HYDROGEN_ACCESSOR | 2655 #undef DECLARE_HYDROGEN_ACCESSOR |
2671 #undef DECLARE_CONCRETE_INSTRUCTION | 2656 #undef DECLARE_CONCRETE_INSTRUCTION |
2672 | 2657 |
2673 } // namespace internal | 2658 } // namespace internal |
2674 } // namespace v8 | 2659 } // namespace v8 |
2675 | 2660 |
2676 #endif // V8_CRANKSHAFT_X64_LITHIUM_X64_H_ | 2661 #endif // V8_CRANKSHAFT_X64_LITHIUM_X64_H_ |
OLD | NEW |