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_OPERATOR_PROPERTIES_H_ | 5 #ifndef V8_COMPILER_OPERATOR_PROPERTIES_H_ |
6 #define V8_COMPILER_OPERATOR_PROPERTIES_H_ | 6 #define V8_COMPILER_OPERATOR_PROPERTIES_H_ |
7 | 7 |
8 #include "src/v8.h" | 8 #include "src/v8.h" |
9 | 9 |
10 namespace v8 { | 10 namespace v8 { |
11 namespace internal { | 11 namespace internal { |
12 namespace compiler { | 12 namespace compiler { |
13 | 13 |
14 class Operator; | 14 class Operator; |
15 | 15 |
16 class OperatorProperties { | 16 class OperatorProperties { |
17 public: | 17 public: |
18 static inline bool HasValueInput(Operator* node); | 18 static inline bool HasValueInput(Operator* node); |
19 static inline bool HasContextInput(Operator* node); | 19 static inline bool HasContextInput(Operator* node); |
20 static inline bool HasEffectInput(Operator* node); | 20 static inline bool HasEffectInput(Operator* node); |
21 static inline bool HasControlInput(Operator* node); | 21 static inline bool HasControlInput(Operator* node); |
| 22 static inline bool HasFrameStateInput(Operator* node); |
22 | 23 |
23 static inline int GetValueInputCount(Operator* op); | 24 static inline int GetValueInputCount(Operator* op); |
24 static inline int GetContextInputCount(Operator* op); | 25 static inline int GetContextInputCount(Operator* op); |
25 static inline int GetEffectInputCount(Operator* op); | 26 static inline int GetEffectInputCount(Operator* op); |
26 static inline int GetControlInputCount(Operator* op); | 27 static inline int GetControlInputCount(Operator* op); |
| 28 static inline int GetFrameStateInputCount(Operator* op); |
27 static inline int GetTotalInputCount(Operator* op); | 29 static inline int GetTotalInputCount(Operator* op); |
28 | 30 |
29 static inline bool HasValueOutput(Operator* op); | 31 static inline bool HasValueOutput(Operator* op); |
30 static inline bool HasEffectOutput(Operator* op); | 32 static inline bool HasEffectOutput(Operator* op); |
31 static inline bool HasControlOutput(Operator* op); | 33 static inline bool HasControlOutput(Operator* op); |
32 | 34 |
33 static inline int GetValueOutputCount(Operator* op); | 35 static inline int GetValueOutputCount(Operator* op); |
34 static inline int GetEffectOutputCount(Operator* op); | 36 static inline int GetEffectOutputCount(Operator* op); |
35 static inline int GetControlOutputCount(Operator* op); | 37 static inline int GetControlOutputCount(Operator* op); |
36 | 38 |
37 static inline bool IsBasicBlockBegin(Operator* op); | 39 static inline bool IsBasicBlockBegin(Operator* op); |
38 static inline bool CanLazilyDeoptimize(Operator* op); | 40 static inline bool CanLazilyDeoptimize(Operator* op); |
39 }; | 41 }; |
40 } | 42 } |
41 } | 43 } |
42 } // namespace v8::internal::compiler | 44 } // namespace v8::internal::compiler |
43 | 45 |
44 #endif // V8_COMPILER_OPERATOR_PROPERTIES_H_ | 46 #endif // V8_COMPILER_OPERATOR_PROPERTIES_H_ |
OLD | NEW |