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 17 matching lines...) Expand all Loading... |
28 V(ArithmeticD) \ | 28 V(ArithmeticD) \ |
29 V(ArithmeticT) \ | 29 V(ArithmeticT) \ |
30 V(BitI) \ | 30 V(BitI) \ |
31 V(BoundsCheck) \ | 31 V(BoundsCheck) \ |
32 V(Branch) \ | 32 V(Branch) \ |
33 V(CallJSFunction) \ | 33 V(CallJSFunction) \ |
34 V(CallWithDescriptor) \ | 34 V(CallWithDescriptor) \ |
35 V(CallFunction) \ | 35 V(CallFunction) \ |
36 V(CallNewArray) \ | 36 V(CallNewArray) \ |
37 V(CallRuntime) \ | 37 V(CallRuntime) \ |
38 V(CallStub) \ | |
39 V(CheckArrayBufferNotNeutered) \ | 38 V(CheckArrayBufferNotNeutered) \ |
40 V(CheckInstanceType) \ | 39 V(CheckInstanceType) \ |
41 V(CheckMaps) \ | 40 V(CheckMaps) \ |
42 V(CheckMapValue) \ | 41 V(CheckMapValue) \ |
43 V(CheckNonSmi) \ | 42 V(CheckNonSmi) \ |
44 V(CheckSmi) \ | 43 V(CheckSmi) \ |
45 V(CheckValue) \ | 44 V(CheckValue) \ |
46 V(ClampDToUint8) \ | 45 V(ClampDToUint8) \ |
47 V(ClampIToUint8) \ | 46 V(ClampIToUint8) \ |
48 V(ClampTToUint8) \ | 47 V(ClampTToUint8) \ |
(...skipping 406 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
455 }; | 454 }; |
456 | 455 |
457 | 456 |
458 class LParameter final : public LTemplateInstruction<1, 0, 0> { | 457 class LParameter final : public LTemplateInstruction<1, 0, 0> { |
459 public: | 458 public: |
460 bool HasInterestingComment(LCodeGen* gen) const override { return false; } | 459 bool HasInterestingComment(LCodeGen* gen) const override { return false; } |
461 DECLARE_CONCRETE_INSTRUCTION(Parameter, "parameter") | 460 DECLARE_CONCRETE_INSTRUCTION(Parameter, "parameter") |
462 }; | 461 }; |
463 | 462 |
464 | 463 |
465 class LCallStub final : public LTemplateInstruction<1, 1, 0> { | |
466 public: | |
467 explicit LCallStub(LOperand* context) { | |
468 inputs_[0] = context; | |
469 } | |
470 | |
471 LOperand* context() { return inputs_[0]; } | |
472 | |
473 DECLARE_CONCRETE_INSTRUCTION(CallStub, "call-stub") | |
474 DECLARE_HYDROGEN_ACCESSOR(CallStub) | |
475 }; | |
476 | |
477 | |
478 class LUnknownOSRValue final : public LTemplateInstruction<1, 0, 0> { | 464 class LUnknownOSRValue final : public LTemplateInstruction<1, 0, 0> { |
479 public: | 465 public: |
480 bool HasInterestingComment(LCodeGen* gen) const override { return false; } | 466 bool HasInterestingComment(LCodeGen* gen) const override { return false; } |
481 DECLARE_CONCRETE_INSTRUCTION(UnknownOSRValue, "unknown-osr-value") | 467 DECLARE_CONCRETE_INSTRUCTION(UnknownOSRValue, "unknown-osr-value") |
482 }; | 468 }; |
483 | 469 |
484 | 470 |
485 template<int I, int T> | 471 template<int I, int T> |
486 class LControlInstruction : public LTemplateInstruction<0, I, T> { | 472 class LControlInstruction : public LTemplateInstruction<0, I, T> { |
487 public: | 473 public: |
(...skipping 2239 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2727 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2713 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
2728 }; | 2714 }; |
2729 | 2715 |
2730 #undef DECLARE_HYDROGEN_ACCESSOR | 2716 #undef DECLARE_HYDROGEN_ACCESSOR |
2731 #undef DECLARE_CONCRETE_INSTRUCTION | 2717 #undef DECLARE_CONCRETE_INSTRUCTION |
2732 | 2718 |
2733 } // namespace internal | 2719 } // namespace internal |
2734 } // namespace v8 | 2720 } // namespace v8 |
2735 | 2721 |
2736 #endif // V8_CRANKSHAFT_X64_LITHIUM_X64_H_ | 2722 #endif // V8_CRANKSHAFT_X64_LITHIUM_X64_H_ |
OLD | NEW |