OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
190 | 190 |
191 // Define list of builtin handlers implemented in assembly. | 191 // Define list of builtin handlers implemented in assembly. |
192 #define BUILTIN_LIST_H(V) \ | 192 #define BUILTIN_LIST_H(V) \ |
193 V(LoadIC_Slow, LOAD_IC) \ | 193 V(LoadIC_Slow, LOAD_IC) \ |
194 V(KeyedLoadIC_Slow, KEYED_LOAD_IC) \ | 194 V(KeyedLoadIC_Slow, KEYED_LOAD_IC) \ |
195 V(StoreIC_Slow, STORE_IC) \ | 195 V(StoreIC_Slow, STORE_IC) \ |
196 V(KeyedStoreIC_Slow, KEYED_STORE_IC) \ | 196 V(KeyedStoreIC_Slow, KEYED_STORE_IC) \ |
197 V(LoadIC_Normal, LOAD_IC) \ | 197 V(LoadIC_Normal, LOAD_IC) \ |
198 V(StoreIC_Normal, STORE_IC) | 198 V(StoreIC_Normal, STORE_IC) |
199 | 199 |
200 #ifdef ENABLE_DEBUGGER_SUPPORT | |
201 // Define list of builtins used by the debugger implemented in assembly. | 200 // Define list of builtins used by the debugger implemented in assembly. |
202 #define BUILTIN_LIST_DEBUG_A(V) \ | 201 #define BUILTIN_LIST_DEBUG_A(V) \ |
203 V(Return_DebugBreak, BUILTIN, DEBUG_STUB, \ | 202 V(Return_DebugBreak, BUILTIN, DEBUG_STUB, \ |
204 DEBUG_BREAK) \ | 203 DEBUG_BREAK) \ |
205 V(CallFunctionStub_DebugBreak, BUILTIN, DEBUG_STUB, \ | 204 V(CallFunctionStub_DebugBreak, BUILTIN, DEBUG_STUB, \ |
206 DEBUG_BREAK) \ | 205 DEBUG_BREAK) \ |
207 V(CallFunctionStub_Recording_DebugBreak, BUILTIN, DEBUG_STUB, \ | 206 V(CallFunctionStub_Recording_DebugBreak, BUILTIN, DEBUG_STUB, \ |
208 DEBUG_BREAK) \ | 207 DEBUG_BREAK) \ |
209 V(CallConstructStub_DebugBreak, BUILTIN, DEBUG_STUB, \ | 208 V(CallConstructStub_DebugBreak, BUILTIN, DEBUG_STUB, \ |
210 DEBUG_BREAK) \ | 209 DEBUG_BREAK) \ |
211 V(CallConstructStub_Recording_DebugBreak, BUILTIN, DEBUG_STUB, \ | 210 V(CallConstructStub_Recording_DebugBreak, BUILTIN, DEBUG_STUB, \ |
212 DEBUG_BREAK) \ | 211 DEBUG_BREAK) \ |
213 V(LoadIC_DebugBreak, LOAD_IC, DEBUG_STUB, \ | 212 V(LoadIC_DebugBreak, LOAD_IC, DEBUG_STUB, \ |
214 DEBUG_BREAK) \ | 213 DEBUG_BREAK) \ |
215 V(KeyedLoadIC_DebugBreak, KEYED_LOAD_IC, DEBUG_STUB, \ | 214 V(KeyedLoadIC_DebugBreak, KEYED_LOAD_IC, DEBUG_STUB, \ |
216 DEBUG_BREAK) \ | 215 DEBUG_BREAK) \ |
217 V(StoreIC_DebugBreak, STORE_IC, DEBUG_STUB, \ | 216 V(StoreIC_DebugBreak, STORE_IC, DEBUG_STUB, \ |
218 DEBUG_BREAK) \ | 217 DEBUG_BREAK) \ |
219 V(KeyedStoreIC_DebugBreak, KEYED_STORE_IC, DEBUG_STUB, \ | 218 V(KeyedStoreIC_DebugBreak, KEYED_STORE_IC, DEBUG_STUB, \ |
220 DEBUG_BREAK) \ | 219 DEBUG_BREAK) \ |
221 V(CompareNilIC_DebugBreak, COMPARE_NIL_IC, DEBUG_STUB, \ | 220 V(CompareNilIC_DebugBreak, COMPARE_NIL_IC, DEBUG_STUB, \ |
222 DEBUG_BREAK) \ | 221 DEBUG_BREAK) \ |
223 V(Slot_DebugBreak, BUILTIN, DEBUG_STUB, \ | 222 V(Slot_DebugBreak, BUILTIN, DEBUG_STUB, \ |
224 DEBUG_BREAK) \ | 223 DEBUG_BREAK) \ |
225 V(PlainReturn_LiveEdit, BUILTIN, DEBUG_STUB, \ | 224 V(PlainReturn_LiveEdit, BUILTIN, DEBUG_STUB, \ |
226 DEBUG_BREAK) \ | 225 DEBUG_BREAK) \ |
227 V(FrameDropper_LiveEdit, BUILTIN, DEBUG_STUB, \ | 226 V(FrameDropper_LiveEdit, BUILTIN, DEBUG_STUB, \ |
228 DEBUG_BREAK) | 227 DEBUG_BREAK) |
229 #else | |
230 #define BUILTIN_LIST_DEBUG_A(V) | |
231 #endif | |
232 | 228 |
233 // Define list of builtins implemented in JavaScript. | 229 // Define list of builtins implemented in JavaScript. |
234 #define BUILTINS_LIST_JS(V) \ | 230 #define BUILTINS_LIST_JS(V) \ |
235 V(EQUALS, 1) \ | 231 V(EQUALS, 1) \ |
236 V(STRICT_EQUALS, 1) \ | 232 V(STRICT_EQUALS, 1) \ |
237 V(COMPARE, 2) \ | 233 V(COMPARE, 2) \ |
238 V(ADD, 1) \ | 234 V(ADD, 1) \ |
239 V(SUB, 1) \ | 235 V(SUB, 1) \ |
240 V(MUL, 1) \ | 236 V(MUL, 1) \ |
241 V(DIV, 1) \ | 237 V(DIV, 1) \ |
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
407 | 403 |
408 friend class BuiltinFunctionTable; | 404 friend class BuiltinFunctionTable; |
409 friend class Isolate; | 405 friend class Isolate; |
410 | 406 |
411 DISALLOW_COPY_AND_ASSIGN(Builtins); | 407 DISALLOW_COPY_AND_ASSIGN(Builtins); |
412 }; | 408 }; |
413 | 409 |
414 } } // namespace v8::internal | 410 } } // namespace v8::internal |
415 | 411 |
416 #endif // V8_BUILTINS_H_ | 412 #endif // V8_BUILTINS_H_ |
OLD | NEW |