OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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/machine-type.h" | 8 #include "src/compiler/machine-type.h" |
9 #include "src/unique.h" | 9 #include "src/unique.h" |
10 | 10 |
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
192 | 192 |
193 const Operator* Int32Constant(int32_t); | 193 const Operator* Int32Constant(int32_t); |
194 const Operator* Int64Constant(int64_t); | 194 const Operator* Int64Constant(int64_t); |
195 const Operator* Float32Constant(volatile float); | 195 const Operator* Float32Constant(volatile float); |
196 const Operator* Float64Constant(volatile double); | 196 const Operator* Float64Constant(volatile double); |
197 const Operator* ExternalConstant(const ExternalReference&); | 197 const Operator* ExternalConstant(const ExternalReference&); |
198 const Operator* NumberConstant(volatile double); | 198 const Operator* NumberConstant(volatile double); |
199 const Operator* HeapConstant(const Unique<HeapObject>&); | 199 const Operator* HeapConstant(const Unique<HeapObject>&); |
200 | 200 |
201 const Operator* Select(MachineType, BranchHint = BranchHint::kNone); | 201 const Operator* Select(MachineType, BranchHint = BranchHint::kNone); |
202 const Operator* Phi(MachineType type, int arguments); | 202 const Operator* Phi(MachineType type, int value_input_count); |
203 const Operator* EffectPhi(int arguments); | 203 const Operator* EffectPhi(int effect_input_count); |
204 const Operator* EffectSet(int arguments); | 204 const Operator* EffectSet(int arguments); |
205 const Operator* ValueEffect(int arguments); | 205 const Operator* ValueEffect(int arguments); |
206 const Operator* Finish(int arguments); | 206 const Operator* Finish(int arguments); |
207 const Operator* StateValues(int arguments); | 207 const Operator* StateValues(int arguments); |
208 const Operator* FrameState( | 208 const Operator* FrameState( |
209 FrameStateType type, BailoutId bailout_id, | 209 FrameStateType type, BailoutId bailout_id, |
210 OutputFrameStateCombine state_combine, | 210 OutputFrameStateCombine state_combine, |
211 MaybeHandle<JSFunction> jsfunction = MaybeHandle<JSFunction>()); | 211 MaybeHandle<JSFunction> jsfunction = MaybeHandle<JSFunction>()); |
212 const Operator* Call(const CallDescriptor* descriptor); | 212 const Operator* Call(const CallDescriptor* descriptor); |
213 const Operator* Projection(size_t index); | 213 const Operator* Projection(size_t index); |
214 | 214 |
215 // Constructs a new merge or phi operator with the same opcode as {op}, but | 215 // Constructs a new merge or phi operator with the same opcode as {op}, but |
216 // with {size} inputs. | 216 // with {size} inputs. |
217 const Operator* ResizeMergeOrPhi(const Operator* op, int size); | 217 const Operator* ResizeMergeOrPhi(const Operator* op, int size); |
218 | 218 |
219 private: | 219 private: |
220 Zone* zone() const { return zone_; } | 220 Zone* zone() const { return zone_; } |
221 | 221 |
222 const CommonOperatorGlobalCache& cache_; | 222 const CommonOperatorGlobalCache& cache_; |
223 Zone* const zone_; | 223 Zone* const zone_; |
224 | 224 |
225 DISALLOW_COPY_AND_ASSIGN(CommonOperatorBuilder); | 225 DISALLOW_COPY_AND_ASSIGN(CommonOperatorBuilder); |
226 }; | 226 }; |
227 | 227 |
228 } // namespace compiler | 228 } // namespace compiler |
229 } // namespace internal | 229 } // namespace internal |
230 } // namespace v8 | 230 } // namespace v8 |
231 | 231 |
232 #endif // V8_COMPILER_COMMON_OPERATOR_H_ | 232 #endif // V8_COMPILER_COMMON_OPERATOR_H_ |
OLD | NEW |