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(STRING_ADD_LEFT, 1) \ | 194 V(TO_NAME, 0) \ |
195 V(STRING_ADD_RIGHT, 1) \ | 195 V(STRING_ADD_LEFT, 1) \ |
196 V(APPLY_PREPARE, 1) \ | 196 V(STRING_ADD_RIGHT, 1) \ |
| 197 V(APPLY_PREPARE, 1) \ |
197 V(STACK_OVERFLOW, 1) | 198 V(STACK_OVERFLOW, 1) |
198 | 199 |
199 class BuiltinFunctionTable; | 200 class BuiltinFunctionTable; |
200 class ObjectVisitor; | 201 class ObjectVisitor; |
201 | 202 |
202 | 203 |
203 class Builtins { | 204 class Builtins { |
204 public: | 205 public: |
205 ~Builtins(); | 206 ~Builtins(); |
206 | 207 |
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
340 | 341 |
341 friend class BuiltinFunctionTable; | 342 friend class BuiltinFunctionTable; |
342 friend class Isolate; | 343 friend class Isolate; |
343 | 344 |
344 DISALLOW_COPY_AND_ASSIGN(Builtins); | 345 DISALLOW_COPY_AND_ASSIGN(Builtins); |
345 }; | 346 }; |
346 | 347 |
347 } } // namespace v8::internal | 348 } } // namespace v8::internal |
348 | 349 |
349 #endif // V8_BUILTINS_H_ | 350 #endif // V8_BUILTINS_H_ |
OLD | NEW |