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 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
60 V(HandleApiCallAsConstructor, NO_EXTRA_ARGUMENTS) \ | 60 V(HandleApiCallAsConstructor, NO_EXTRA_ARGUMENTS) \ |
61 \ | 61 \ |
62 V(StrictModePoisonPill, NO_EXTRA_ARGUMENTS) \ | 62 V(StrictModePoisonPill, NO_EXTRA_ARGUMENTS) \ |
63 V(GeneratorPoisonPill, NO_EXTRA_ARGUMENTS) | 63 V(GeneratorPoisonPill, NO_EXTRA_ARGUMENTS) |
64 | 64 |
65 // Define list of builtins implemented in assembly. | 65 // Define list of builtins implemented in assembly. |
66 #define BUILTIN_LIST_A(V) \ | 66 #define BUILTIN_LIST_A(V) \ |
67 V(ArgumentsAdaptorTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 67 V(ArgumentsAdaptorTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
68 V(InOptimizationQueue, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 68 V(InOptimizationQueue, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
69 V(JSConstructStubGeneric, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 69 V(JSConstructStubGeneric, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
| 70 V(JSConstructStubForDerived, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
70 V(JSConstructStubApi, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 71 V(JSConstructStubApi, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
71 V(JSEntryTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 72 V(JSEntryTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
72 V(JSConstructEntryTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 73 V(JSConstructEntryTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
73 V(CompileLazy, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 74 V(CompileLazy, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
74 V(CompileOptimized, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 75 V(CompileOptimized, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
75 V(CompileOptimizedConcurrent, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 76 V(CompileOptimizedConcurrent, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
76 V(NotifyDeoptimized, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 77 V(NotifyDeoptimized, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
77 V(NotifySoftDeoptimized, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 78 V(NotifySoftDeoptimized, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
78 V(NotifyLazyDeoptimized, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 79 V(NotifyLazyDeoptimized, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
79 V(NotifyStubFailure, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 80 V(NotifyStubFailure, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
291 static int const javascript_argc_[id_count]; | 292 static int const javascript_argc_[id_count]; |
292 | 293 |
293 static void Generate_Adaptor(MacroAssembler* masm, | 294 static void Generate_Adaptor(MacroAssembler* masm, |
294 CFunctionId id, | 295 CFunctionId id, |
295 BuiltinExtraArguments extra_args); | 296 BuiltinExtraArguments extra_args); |
296 static void Generate_CompileLazy(MacroAssembler* masm); | 297 static void Generate_CompileLazy(MacroAssembler* masm); |
297 static void Generate_InOptimizationQueue(MacroAssembler* masm); | 298 static void Generate_InOptimizationQueue(MacroAssembler* masm); |
298 static void Generate_CompileOptimized(MacroAssembler* masm); | 299 static void Generate_CompileOptimized(MacroAssembler* masm); |
299 static void Generate_CompileOptimizedConcurrent(MacroAssembler* masm); | 300 static void Generate_CompileOptimizedConcurrent(MacroAssembler* masm); |
300 static void Generate_JSConstructStubGeneric(MacroAssembler* masm); | 301 static void Generate_JSConstructStubGeneric(MacroAssembler* masm); |
| 302 static void Generate_JSConstructStubForDerived(MacroAssembler* masm); |
301 static void Generate_JSConstructStubApi(MacroAssembler* masm); | 303 static void Generate_JSConstructStubApi(MacroAssembler* masm); |
302 static void Generate_JSEntryTrampoline(MacroAssembler* masm); | 304 static void Generate_JSEntryTrampoline(MacroAssembler* masm); |
303 static void Generate_JSConstructEntryTrampoline(MacroAssembler* masm); | 305 static void Generate_JSConstructEntryTrampoline(MacroAssembler* masm); |
304 static void Generate_NotifyDeoptimized(MacroAssembler* masm); | 306 static void Generate_NotifyDeoptimized(MacroAssembler* masm); |
305 static void Generate_NotifySoftDeoptimized(MacroAssembler* masm); | 307 static void Generate_NotifySoftDeoptimized(MacroAssembler* masm); |
306 static void Generate_NotifyLazyDeoptimized(MacroAssembler* masm); | 308 static void Generate_NotifyLazyDeoptimized(MacroAssembler* masm); |
307 static void Generate_NotifyStubFailure(MacroAssembler* masm); | 309 static void Generate_NotifyStubFailure(MacroAssembler* masm); |
308 static void Generate_NotifyStubFailureSaveDoubles(MacroAssembler* masm); | 310 static void Generate_NotifyStubFailureSaveDoubles(MacroAssembler* masm); |
309 static void Generate_ArgumentsAdaptorTrampoline(MacroAssembler* masm); | 311 static void Generate_ArgumentsAdaptorTrampoline(MacroAssembler* masm); |
310 | 312 |
(...skipping 26 matching lines...) Expand all Loading... |
337 | 339 |
338 friend class BuiltinFunctionTable; | 340 friend class BuiltinFunctionTable; |
339 friend class Isolate; | 341 friend class Isolate; |
340 | 342 |
341 DISALLOW_COPY_AND_ASSIGN(Builtins); | 343 DISALLOW_COPY_AND_ASSIGN(Builtins); |
342 }; | 344 }; |
343 | 345 |
344 } } // namespace v8::internal | 346 } } // namespace v8::internal |
345 | 347 |
346 #endif // V8_BUILTINS_H_ | 348 #endif // V8_BUILTINS_H_ |
OLD | NEW |