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_IA32_LITHIUM_IA32_H_ | 5 #ifndef V8_CRANKSHAFT_IA32_LITHIUM_IA32_H_ |
6 #define V8_CRANKSHAFT_IA32_LITHIUM_IA32_H_ | 6 #define V8_CRANKSHAFT_IA32_LITHIUM_IA32_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 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
68 V(DoubleToSmi) \ | 68 V(DoubleToSmi) \ |
69 V(Drop) \ | 69 V(Drop) \ |
70 V(Dummy) \ | 70 V(Dummy) \ |
71 V(DummyUse) \ | 71 V(DummyUse) \ |
72 V(FastAllocate) \ | 72 V(FastAllocate) \ |
73 V(FlooringDivByConstI) \ | 73 V(FlooringDivByConstI) \ |
74 V(FlooringDivByPowerOf2I) \ | 74 V(FlooringDivByPowerOf2I) \ |
75 V(FlooringDivI) \ | 75 V(FlooringDivI) \ |
76 V(ForInCacheArray) \ | 76 V(ForInCacheArray) \ |
77 V(ForInPrepareMap) \ | 77 V(ForInPrepareMap) \ |
78 V(GetCachedArrayIndex) \ | |
79 V(Goto) \ | 78 V(Goto) \ |
80 V(HasCachedArrayIndexAndBranch) \ | |
81 V(HasInPrototypeChainAndBranch) \ | 79 V(HasInPrototypeChainAndBranch) \ |
82 V(HasInstanceTypeAndBranch) \ | 80 V(HasInstanceTypeAndBranch) \ |
83 V(InnerAllocatedObject) \ | 81 V(InnerAllocatedObject) \ |
84 V(InstructionGap) \ | 82 V(InstructionGap) \ |
85 V(Integer32ToDouble) \ | 83 V(Integer32ToDouble) \ |
86 V(InvokeFunction) \ | 84 V(InvokeFunction) \ |
87 V(IsStringAndBranch) \ | 85 V(IsStringAndBranch) \ |
88 V(IsSmiAndBranch) \ | 86 V(IsSmiAndBranch) \ |
89 V(IsUndetectableAndBranch) \ | 87 V(IsUndetectableAndBranch) \ |
90 V(Label) \ | 88 V(Label) \ |
(...skipping 979 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1070 LOperand* value() { return inputs_[0]; } | 1068 LOperand* value() { return inputs_[0]; } |
1071 LOperand* temp() { return temps_[0]; } | 1069 LOperand* temp() { return temps_[0]; } |
1072 | 1070 |
1073 DECLARE_CONCRETE_INSTRUCTION(HasInstanceTypeAndBranch, | 1071 DECLARE_CONCRETE_INSTRUCTION(HasInstanceTypeAndBranch, |
1074 "has-instance-type-and-branch") | 1072 "has-instance-type-and-branch") |
1075 DECLARE_HYDROGEN_ACCESSOR(HasInstanceTypeAndBranch) | 1073 DECLARE_HYDROGEN_ACCESSOR(HasInstanceTypeAndBranch) |
1076 | 1074 |
1077 void PrintDataTo(StringStream* stream) override; | 1075 void PrintDataTo(StringStream* stream) override; |
1078 }; | 1076 }; |
1079 | 1077 |
1080 | |
1081 class LGetCachedArrayIndex final : public LTemplateInstruction<1, 1, 0> { | |
1082 public: | |
1083 explicit LGetCachedArrayIndex(LOperand* value) { | |
1084 inputs_[0] = value; | |
1085 } | |
1086 | |
1087 LOperand* value() { return inputs_[0]; } | |
1088 | |
1089 DECLARE_CONCRETE_INSTRUCTION(GetCachedArrayIndex, "get-cached-array-index") | |
1090 DECLARE_HYDROGEN_ACCESSOR(GetCachedArrayIndex) | |
1091 }; | |
1092 | |
1093 | |
1094 class LHasCachedArrayIndexAndBranch final : public LControlInstruction<1, 0> { | |
1095 public: | |
1096 explicit LHasCachedArrayIndexAndBranch(LOperand* value) { | |
1097 inputs_[0] = value; | |
1098 } | |
1099 | |
1100 LOperand* value() { return inputs_[0]; } | |
1101 | |
1102 DECLARE_CONCRETE_INSTRUCTION(HasCachedArrayIndexAndBranch, | |
1103 "has-cached-array-index-and-branch") | |
1104 | |
1105 void PrintDataTo(StringStream* stream) override; | |
1106 }; | |
1107 | |
1108 | |
1109 class LClassOfTestAndBranch final : public LControlInstruction<1, 2> { | 1078 class LClassOfTestAndBranch final : public LControlInstruction<1, 2> { |
1110 public: | 1079 public: |
1111 LClassOfTestAndBranch(LOperand* value, LOperand* temp, LOperand* temp2) { | 1080 LClassOfTestAndBranch(LOperand* value, LOperand* temp, LOperand* temp2) { |
1112 inputs_[0] = value; | 1081 inputs_[0] = value; |
1113 temps_[0] = temp; | 1082 temps_[0] = temp; |
1114 temps_[1] = temp2; | 1083 temps_[1] = temp2; |
1115 } | 1084 } |
1116 | 1085 |
1117 LOperand* value() { return inputs_[0]; } | 1086 LOperand* value() { return inputs_[0]; } |
1118 LOperand* temp() { return temps_[0]; } | 1087 LOperand* temp() { return temps_[0]; } |
(...skipping 1417 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2536 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2505 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
2537 }; | 2506 }; |
2538 | 2507 |
2539 #undef DECLARE_HYDROGEN_ACCESSOR | 2508 #undef DECLARE_HYDROGEN_ACCESSOR |
2540 #undef DECLARE_CONCRETE_INSTRUCTION | 2509 #undef DECLARE_CONCRETE_INSTRUCTION |
2541 | 2510 |
2542 } // namespace internal | 2511 } // namespace internal |
2543 } // namespace v8 | 2512 } // namespace v8 |
2544 | 2513 |
2545 #endif // V8_CRANKSHAFT_IA32_LITHIUM_IA32_H_ | 2514 #endif // V8_CRANKSHAFT_IA32_LITHIUM_IA32_H_ |
OLD | NEW |