OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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_COMPILER_COMMON_OPERATOR_H_ | 5 #ifndef V8_COMPILER_COMMON_OPERATOR_H_ |
6 #define V8_COMPILER_COMMON_OPERATOR_H_ | 6 #define V8_COMPILER_COMMON_OPERATOR_H_ |
7 | 7 |
8 #include "src/compiler/frame-states.h" | 8 #include "src/compiler/frame-states.h" |
9 #include "src/compiler/machine-type.h" | 9 #include "src/compiler/machine-type.h" |
10 #include "src/zone-containers.h" | 10 #include "src/zone-containers.h" |
11 | 11 |
12 namespace v8 { | 12 namespace v8 { |
13 namespace internal { | 13 namespace internal { |
14 | 14 |
15 // Forward declarations. | 15 // Forward declarations. |
16 class ExternalReference; | 16 class ExternalReference; |
| 17 template <class> |
| 18 class TypeImpl; |
| 19 struct ZoneTypeConfig; |
| 20 typedef TypeImpl<ZoneTypeConfig> Type; |
17 | 21 |
18 | 22 |
19 namespace compiler { | 23 namespace compiler { |
20 | 24 |
21 // Forward declarations. | 25 // Forward declarations. |
22 class CallDescriptor; | 26 class CallDescriptor; |
23 struct CommonOperatorGlobalCache; | 27 struct CommonOperatorGlobalCache; |
24 class Operator; | 28 class Operator; |
25 | 29 |
26 | 30 |
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
138 const Operator* Float32Constant(volatile float); | 142 const Operator* Float32Constant(volatile float); |
139 const Operator* Float64Constant(volatile double); | 143 const Operator* Float64Constant(volatile double); |
140 const Operator* ExternalConstant(const ExternalReference&); | 144 const Operator* ExternalConstant(const ExternalReference&); |
141 const Operator* NumberConstant(volatile double); | 145 const Operator* NumberConstant(volatile double); |
142 const Operator* HeapConstant(const Handle<HeapObject>&); | 146 const Operator* HeapConstant(const Handle<HeapObject>&); |
143 | 147 |
144 const Operator* Select(MachineType, BranchHint = BranchHint::kNone); | 148 const Operator* Select(MachineType, BranchHint = BranchHint::kNone); |
145 const Operator* Phi(MachineType type, int value_input_count); | 149 const Operator* Phi(MachineType type, int value_input_count); |
146 const Operator* EffectPhi(int effect_input_count); | 150 const Operator* EffectPhi(int effect_input_count); |
147 const Operator* EffectSet(int arguments); | 151 const Operator* EffectSet(int arguments); |
| 152 const Operator* Guard(Type* type); |
148 const Operator* BeginRegion(); | 153 const Operator* BeginRegion(); |
149 const Operator* FinishRegion(); | 154 const Operator* FinishRegion(); |
150 const Operator* StateValues(int arguments); | 155 const Operator* StateValues(int arguments); |
151 const Operator* TypedStateValues(const ZoneVector<MachineType>* types); | 156 const Operator* TypedStateValues(const ZoneVector<MachineType>* types); |
152 const Operator* FrameState(BailoutId bailout_id, | 157 const Operator* FrameState(BailoutId bailout_id, |
153 OutputFrameStateCombine state_combine, | 158 OutputFrameStateCombine state_combine, |
154 const FrameStateFunctionInfo* function_info); | 159 const FrameStateFunctionInfo* function_info); |
155 const Operator* Call(const CallDescriptor* descriptor); | 160 const Operator* Call(const CallDescriptor* descriptor); |
156 const Operator* TailCall(const CallDescriptor* descriptor); | 161 const Operator* TailCall(const CallDescriptor* descriptor); |
157 const Operator* Projection(size_t index); | 162 const Operator* Projection(size_t index); |
(...skipping 16 matching lines...) Expand all Loading... |
174 Zone* const zone_; | 179 Zone* const zone_; |
175 | 180 |
176 DISALLOW_COPY_AND_ASSIGN(CommonOperatorBuilder); | 181 DISALLOW_COPY_AND_ASSIGN(CommonOperatorBuilder); |
177 }; | 182 }; |
178 | 183 |
179 } // namespace compiler | 184 } // namespace compiler |
180 } // namespace internal | 185 } // namespace internal |
181 } // namespace v8 | 186 } // namespace v8 |
182 | 187 |
183 #endif // V8_COMPILER_COMMON_OPERATOR_H_ | 188 #endif // V8_COMPILER_COMMON_OPERATOR_H_ |
OLD | NEW |