OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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_BUILTINS_H_ | 5 #ifndef V8_BUILTINS_H_ |
6 #define V8_BUILTINS_H_ | 6 #define V8_BUILTINS_H_ |
7 | 7 |
8 namespace v8 { | 8 namespace v8 { |
9 namespace internal { | 9 namespace internal { |
10 | 10 |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
158 V(CompareNilIC_DebugBreak, COMPARE_NIL_IC, DEBUG_STUB, \ | 158 V(CompareNilIC_DebugBreak, COMPARE_NIL_IC, DEBUG_STUB, \ |
159 DEBUG_BREAK) \ | 159 DEBUG_BREAK) \ |
160 V(Slot_DebugBreak, BUILTIN, DEBUG_STUB, \ | 160 V(Slot_DebugBreak, BUILTIN, DEBUG_STUB, \ |
161 DEBUG_BREAK) \ | 161 DEBUG_BREAK) \ |
162 V(PlainReturn_LiveEdit, BUILTIN, DEBUG_STUB, \ | 162 V(PlainReturn_LiveEdit, BUILTIN, DEBUG_STUB, \ |
163 DEBUG_BREAK) \ | 163 DEBUG_BREAK) \ |
164 V(FrameDropper_LiveEdit, BUILTIN, DEBUG_STUB, \ | 164 V(FrameDropper_LiveEdit, BUILTIN, DEBUG_STUB, \ |
165 DEBUG_BREAK) | 165 DEBUG_BREAK) |
166 | 166 |
167 // Define list of builtins implemented in JavaScript. | 167 // Define list of builtins implemented in JavaScript. |
168 #define BUILTINS_LIST_JS(V) \ | 168 #define BUILTINS_LIST_JS(V) \ |
169 V(EQUALS, 1) \ | 169 V(EQUALS, 1) \ |
170 V(STRICT_EQUALS, 1) \ | 170 V(STRICT_EQUALS, 1) \ |
171 V(COMPARE, 2) \ | 171 V(COMPARE, 2) \ |
172 V(ADD, 1) \ | 172 V(ADD, 1) \ |
173 V(SUB, 1) \ | 173 V(SUB, 1) \ |
174 V(MUL, 1) \ | 174 V(MUL, 1) \ |
175 V(DIV, 1) \ | 175 V(DIV, 1) \ |
176 V(MOD, 1) \ | 176 V(MOD, 1) \ |
177 V(BIT_OR, 1) \ | 177 V(BIT_OR, 1) \ |
178 V(BIT_AND, 1) \ | 178 V(BIT_AND, 1) \ |
179 V(BIT_XOR, 1) \ | 179 V(BIT_XOR, 1) \ |
180 V(SHL, 1) \ | 180 V(SHL, 1) \ |
181 V(SAR, 1) \ | 181 V(SAR, 1) \ |
182 V(SHR, 1) \ | 182 V(SHR, 1) \ |
183 V(DELETE, 2) \ | 183 V(DELETE, 2) \ |
184 V(IN, 1) \ | 184 V(IN, 1) \ |
185 V(INSTANCE_OF, 1) \ | 185 V(INSTANCE_OF, 1) \ |
186 V(FILTER_KEY, 1) \ | 186 V(FILTER_KEY, 1) \ |
187 V(CALL_NON_FUNCTION, 0) \ | 187 V(CALL_NON_FUNCTION, 0) \ |
188 V(CALL_NON_FUNCTION_AS_CONSTRUCTOR, 0) \ | 188 V(CALL_NON_FUNCTION_AS_CONSTRUCTOR, 0) \ |
189 V(CALL_FUNCTION_PROXY, 1) \ | 189 V(CALL_FUNCTION_PROXY, 1) \ |
190 V(CALL_FUNCTION_PROXY_AS_CONSTRUCTOR, 1) \ | 190 V(CALL_FUNCTION_PROXY_AS_CONSTRUCTOR, 1) \ |
191 V(TO_OBJECT, 0) \ | 191 V(TO_OBJECT, 0) \ |
192 V(TO_NUMBER, 0) \ | 192 V(TO_NUMBER, 0) \ |
193 V(TO_STRING, 0) \ | 193 V(TO_STRING, 0) \ |
194 V(TO_NAME, 0) \ | 194 V(STRING_ADD_LEFT, 1) \ |
195 V(STRING_ADD_LEFT, 1) \ | 195 V(STRING_ADD_RIGHT, 1) \ |
196 V(STRING_ADD_RIGHT, 1) \ | 196 V(APPLY_PREPARE, 1) \ |
197 V(APPLY_PREPARE, 1) \ | |
198 V(STACK_OVERFLOW, 1) | 197 V(STACK_OVERFLOW, 1) |
199 | 198 |
200 class BuiltinFunctionTable; | 199 class BuiltinFunctionTable; |
201 class ObjectVisitor; | 200 class ObjectVisitor; |
202 | 201 |
203 | 202 |
204 class Builtins { | 203 class Builtins { |
205 public: | 204 public: |
206 ~Builtins(); | 205 ~Builtins(); |
207 | 206 |
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
341 | 340 |
342 friend class BuiltinFunctionTable; | 341 friend class BuiltinFunctionTable; |
343 friend class Isolate; | 342 friend class Isolate; |
344 | 343 |
345 DISALLOW_COPY_AND_ASSIGN(Builtins); | 344 DISALLOW_COPY_AND_ASSIGN(Builtins); |
346 }; | 345 }; |
347 | 346 |
348 } } // namespace v8::internal | 347 } } // namespace v8::internal |
349 | 348 |
350 #endif // V8_BUILTINS_H_ | 349 #endif // V8_BUILTINS_H_ |
OLD | NEW |