Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(189)

Side by Side Diff: src/compiler/opcodes.h

Issue 509343002: Better typing and type verification (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Small refactoring Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 CONTROL_OP_LIST(V) \ 9 #define INNER_CONTROL_OP_LIST(V) \
10 V(Start) \
11 V(Dead) \ 10 V(Dead) \
12 V(Loop) \ 11 V(Loop) \
13 V(End) \
14 V(Branch) \ 12 V(Branch) \
15 V(IfTrue) \ 13 V(IfTrue) \
16 V(IfFalse) \ 14 V(IfFalse) \
17 V(Merge) \ 15 V(Merge) \
18 V(Return) \ 16 V(Return) \
19 V(Throw) \ 17 V(Throw) \
20 V(Continuation) \ 18 V(Continuation) \
21 V(LazyDeoptimization) \ 19 V(LazyDeoptimization) \
22 V(Deoptimize) 20 V(Deoptimize)
23 21
22 #define CONTROL_OP_LIST(V) \
23 INNER_CONTROL_OP_LIST(V) \
24 V(Start) \
25 V(End)
26
24 // Opcodes for common operators. 27 // Opcodes for common operators.
25 #define LEAF_OP_LIST(V) \ 28 #define LEAF_OP_LIST(V) \
26 V(Int32Constant) \ 29 V(Int32Constant) \
27 V(Int64Constant) \ 30 V(Int64Constant) \
28 V(Float64Constant) \ 31 V(Float64Constant) \
29 V(ExternalConstant) \ 32 V(ExternalConstant) \
30 V(NumberConstant) \ 33 V(NumberConstant) \
31 V(HeapConstant) 34 V(HeapConstant)
32 35
33 #define INNER_OP_LIST(V) \ 36 #define INNER_OP_LIST(V) \
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
79 82
80 #define JS_LOGIC_UNOP_LIST(V) V(JSUnaryNot) 83 #define JS_LOGIC_UNOP_LIST(V) V(JSUnaryNot)
81 84
82 #define JS_CONVERSION_UNOP_LIST(V) \ 85 #define JS_CONVERSION_UNOP_LIST(V) \
83 V(JSToBoolean) \ 86 V(JSToBoolean) \
84 V(JSToNumber) \ 87 V(JSToNumber) \
85 V(JSToString) \ 88 V(JSToString) \
86 V(JSToName) \ 89 V(JSToName) \
87 V(JSToObject) 90 V(JSToObject)
88 91
89 #define JS_OTHER_UNOP_LIST(V) V(JSTypeOf) 92 #define JS_OTHER_UNOP_LIST(V) \
93 V(JSTypeOf)
90 94
91 #define JS_SIMPLE_UNOP_LIST(V) \ 95 #define JS_SIMPLE_UNOP_LIST(V) \
92 JS_LOGIC_UNOP_LIST(V) \ 96 JS_LOGIC_UNOP_LIST(V) \
93 JS_CONVERSION_UNOP_LIST(V) \ 97 JS_CONVERSION_UNOP_LIST(V) \
94 JS_OTHER_UNOP_LIST(V) 98 JS_OTHER_UNOP_LIST(V)
95 99
96 #define JS_OBJECT_OP_LIST(V) \ 100 #define JS_OBJECT_OP_LIST(V) \
97 V(JSCreate) \ 101 V(JSCreate) \
98 V(JSLoadProperty) \ 102 V(JSLoadProperty) \
99 V(JSLoadNamed) \ 103 V(JSLoadNamed) \
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after
295 return false; 299 return false;
296 } 300 }
297 } 301 }
298 }; 302 };
299 303
300 } // namespace compiler 304 } // namespace compiler
301 } // namespace internal 305 } // namespace internal
302 } // namespace v8 306 } // namespace v8
303 307
304 #endif // V8_COMPILER_OPCODES_H_ 308 #endif // V8_COMPILER_OPCODES_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698