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_OPCODES_H_ | 5 #ifndef V8_COMPILER_OPCODES_H_ |
6 #define V8_COMPILER_OPCODES_H_ | 6 #define V8_COMPILER_OPCODES_H_ |
7 | 7 |
8 // Opcodes for control operators. | 8 // Opcodes for control operators. |
9 #define INNER_CONTROL_OP_LIST(V) \ | 9 #define INNER_CONTROL_OP_LIST(V) \ |
10 V(Dead) \ | 10 V(Dead) \ |
11 V(Loop) \ | 11 V(Loop) \ |
12 V(Branch) \ | 12 V(Branch) \ |
13 V(IfTrue) \ | 13 V(IfTrue) \ |
14 V(IfFalse) \ | 14 V(IfFalse) \ |
| 15 V(IfException) \ |
| 16 V(IfSuccess) \ |
15 V(Switch) \ | 17 V(Switch) \ |
16 V(Case) \ | 18 V(Case) \ |
17 V(Merge) \ | 19 V(Merge) \ |
18 V(Return) \ | 20 V(Return) \ |
19 V(OsrNormalEntry) \ | 21 V(OsrNormalEntry) \ |
20 V(OsrLoopEntry) \ | 22 V(OsrLoopEntry) \ |
21 V(Throw) | 23 V(Throw) |
22 | 24 |
23 #define CONTROL_OP_LIST(V) \ | 25 #define CONTROL_OP_LIST(V) \ |
24 INNER_CONTROL_OP_LIST(V) \ | 26 INNER_CONTROL_OP_LIST(V) \ |
(...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
291 // Returns true if opcode for JavaScript operator. | 293 // Returns true if opcode for JavaScript operator. |
292 static bool IsJsOpcode(Value value) { | 294 static bool IsJsOpcode(Value value) { |
293 return kJSEqual <= value && value <= kJSDebugger; | 295 return kJSEqual <= value && value <= kJSDebugger; |
294 } | 296 } |
295 | 297 |
296 // Returns true if opcode for constant operator. | 298 // Returns true if opcode for constant operator. |
297 static bool IsConstantOpcode(Value value) { | 299 static bool IsConstantOpcode(Value value) { |
298 return kInt32Constant <= value && value <= kHeapConstant; | 300 return kInt32Constant <= value && value <= kHeapConstant; |
299 } | 301 } |
300 | 302 |
301 static bool IsPhiOpcode(Value val) { | 303 static bool IsPhiOpcode(Value value) { |
302 return val == kPhi || val == kEffectPhi; | 304 return value == kPhi || value == kEffectPhi; |
| 305 } |
| 306 |
| 307 static bool IsMergeOpcode(Value value) { |
| 308 return value == kMerge || value == kLoop; |
303 } | 309 } |
304 }; | 310 }; |
305 | 311 |
306 } // namespace compiler | 312 } // namespace compiler |
307 } // namespace internal | 313 } // namespace internal |
308 } // namespace v8 | 314 } // namespace v8 |
309 | 315 |
310 #endif // V8_COMPILER_OPCODES_H_ | 316 #endif // V8_COMPILER_OPCODES_H_ |
OLD | NEW |