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 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
81 V(HandleApiCallConstruct, NEEDS_CALLED_FUNCTION) \ | 81 V(HandleApiCallConstruct, NEEDS_CALLED_FUNCTION) \ |
82 V(HandleApiCallAsFunction, NO_EXTRA_ARGUMENTS) \ | 82 V(HandleApiCallAsFunction, NO_EXTRA_ARGUMENTS) \ |
83 V(HandleApiCallAsConstructor, NO_EXTRA_ARGUMENTS) \ | 83 V(HandleApiCallAsConstructor, NO_EXTRA_ARGUMENTS) \ |
84 \ | 84 \ |
85 V(StrictModePoisonPill, NO_EXTRA_ARGUMENTS) | 85 V(StrictModePoisonPill, NO_EXTRA_ARGUMENTS) |
86 | 86 |
87 // Define list of builtins implemented in assembly. | 87 // Define list of builtins implemented in assembly. |
88 #define BUILTIN_LIST_A(V) \ | 88 #define BUILTIN_LIST_A(V) \ |
89 V(ArgumentsAdaptorTrampoline, BUILTIN, UNINITIALIZED, \ | 89 V(ArgumentsAdaptorTrampoline, BUILTIN, UNINITIALIZED, \ |
90 kNoExtraICState) \ | 90 kNoExtraICState) \ |
91 V(InRecompileQueue, BUILTIN, UNINITIALIZED, \ | 91 V(InOptimizationQueue, BUILTIN, UNINITIALIZED, \ |
92 kNoExtraICState) \ | 92 kNoExtraICState) \ |
93 V(JSConstructStubCountdown, BUILTIN, UNINITIALIZED, \ | 93 V(JSConstructStubCountdown, BUILTIN, UNINITIALIZED, \ |
94 kNoExtraICState) \ | 94 kNoExtraICState) \ |
95 V(JSConstructStubGeneric, BUILTIN, UNINITIALIZED, \ | 95 V(JSConstructStubGeneric, BUILTIN, UNINITIALIZED, \ |
96 kNoExtraICState) \ | 96 kNoExtraICState) \ |
97 V(JSConstructStubApi, BUILTIN, UNINITIALIZED, \ | 97 V(JSConstructStubApi, BUILTIN, UNINITIALIZED, \ |
98 kNoExtraICState) \ | 98 kNoExtraICState) \ |
99 V(JSEntryTrampoline, BUILTIN, UNINITIALIZED, \ | 99 V(JSEntryTrampoline, BUILTIN, UNINITIALIZED, \ |
100 kNoExtraICState) \ | 100 kNoExtraICState) \ |
101 V(JSConstructEntryTrampoline, BUILTIN, UNINITIALIZED, \ | 101 V(JSConstructEntryTrampoline, BUILTIN, UNINITIALIZED, \ |
102 kNoExtraICState) \ | 102 kNoExtraICState) \ |
103 V(LazyCompile, BUILTIN, UNINITIALIZED, \ | 103 V(CompileUnoptimized, BUILTIN, UNINITIALIZED, \ |
104 kNoExtraICState) \ | 104 kNoExtraICState) \ |
105 V(LazyRecompile, BUILTIN, UNINITIALIZED, \ | 105 V(CompileOptimized, BUILTIN, UNINITIALIZED, \ |
106 kNoExtraICState) \ | 106 kNoExtraICState) \ |
107 V(ConcurrentRecompile, BUILTIN, UNINITIALIZED, \ | 107 V(CompileOptimizedConcurrent, BUILTIN, UNINITIALIZED, \ |
108 kNoExtraICState) \ | 108 kNoExtraICState) \ |
109 V(NotifyDeoptimized, BUILTIN, UNINITIALIZED, \ | 109 V(NotifyDeoptimized, BUILTIN, UNINITIALIZED, \ |
110 kNoExtraICState) \ | 110 kNoExtraICState) \ |
111 V(NotifySoftDeoptimized, BUILTIN, UNINITIALIZED, \ | 111 V(NotifySoftDeoptimized, BUILTIN, UNINITIALIZED, \ |
112 kNoExtraICState) \ | 112 kNoExtraICState) \ |
113 V(NotifyLazyDeoptimized, BUILTIN, UNINITIALIZED, \ | 113 V(NotifyLazyDeoptimized, BUILTIN, UNINITIALIZED, \ |
114 kNoExtraICState) \ | 114 kNoExtraICState) \ |
115 V(NotifyStubFailure, BUILTIN, UNINITIALIZED, \ | 115 V(NotifyStubFailure, BUILTIN, UNINITIALIZED, \ |
116 kNoExtraICState) \ | 116 kNoExtraICState) \ |
117 V(NotifyStubFailureSaveDoubles, BUILTIN, UNINITIALIZED, \ | 117 V(NotifyStubFailureSaveDoubles, BUILTIN, UNINITIALIZED, \ |
(...skipping 260 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
378 // IterateBuiltins() above which assumes Object**'s for the callback | 378 // IterateBuiltins() above which assumes Object**'s for the callback |
379 // function f, we use an Object* array here. | 379 // function f, we use an Object* array here. |
380 Object* builtins_[builtin_count]; | 380 Object* builtins_[builtin_count]; |
381 const char* names_[builtin_count]; | 381 const char* names_[builtin_count]; |
382 static const char* const javascript_names_[id_count]; | 382 static const char* const javascript_names_[id_count]; |
383 static int const javascript_argc_[id_count]; | 383 static int const javascript_argc_[id_count]; |
384 | 384 |
385 static void Generate_Adaptor(MacroAssembler* masm, | 385 static void Generate_Adaptor(MacroAssembler* masm, |
386 CFunctionId id, | 386 CFunctionId id, |
387 BuiltinExtraArguments extra_args); | 387 BuiltinExtraArguments extra_args); |
388 static void Generate_InRecompileQueue(MacroAssembler* masm); | 388 static void Generate_CompileUnoptimized(MacroAssembler* masm); |
389 static void Generate_ConcurrentRecompile(MacroAssembler* masm); | 389 static void Generate_InOptimizationQueue(MacroAssembler* masm); |
| 390 static void Generate_CompileOptimized(MacroAssembler* masm); |
| 391 static void Generate_CompileOptimizedConcurrent(MacroAssembler* masm); |
390 static void Generate_JSConstructStubCountdown(MacroAssembler* masm); | 392 static void Generate_JSConstructStubCountdown(MacroAssembler* masm); |
391 static void Generate_JSConstructStubGeneric(MacroAssembler* masm); | 393 static void Generate_JSConstructStubGeneric(MacroAssembler* masm); |
392 static void Generate_JSConstructStubApi(MacroAssembler* masm); | 394 static void Generate_JSConstructStubApi(MacroAssembler* masm); |
393 static void Generate_JSEntryTrampoline(MacroAssembler* masm); | 395 static void Generate_JSEntryTrampoline(MacroAssembler* masm); |
394 static void Generate_JSConstructEntryTrampoline(MacroAssembler* masm); | 396 static void Generate_JSConstructEntryTrampoline(MacroAssembler* masm); |
395 static void Generate_LazyCompile(MacroAssembler* masm); | |
396 static void Generate_LazyRecompile(MacroAssembler* masm); | |
397 static void Generate_NotifyDeoptimized(MacroAssembler* masm); | 397 static void Generate_NotifyDeoptimized(MacroAssembler* masm); |
398 static void Generate_NotifySoftDeoptimized(MacroAssembler* masm); | 398 static void Generate_NotifySoftDeoptimized(MacroAssembler* masm); |
399 static void Generate_NotifyLazyDeoptimized(MacroAssembler* masm); | 399 static void Generate_NotifyLazyDeoptimized(MacroAssembler* masm); |
400 static void Generate_NotifyStubFailure(MacroAssembler* masm); | 400 static void Generate_NotifyStubFailure(MacroAssembler* masm); |
401 static void Generate_NotifyStubFailureSaveDoubles(MacroAssembler* masm); | 401 static void Generate_NotifyStubFailureSaveDoubles(MacroAssembler* masm); |
402 static void Generate_ArgumentsAdaptorTrampoline(MacroAssembler* masm); | 402 static void Generate_ArgumentsAdaptorTrampoline(MacroAssembler* masm); |
403 | 403 |
404 static void Generate_FunctionCall(MacroAssembler* masm); | 404 static void Generate_FunctionCall(MacroAssembler* masm); |
405 static void Generate_FunctionApply(MacroAssembler* masm); | 405 static void Generate_FunctionApply(MacroAssembler* masm); |
406 | 406 |
(...skipping 23 matching lines...) Expand all Loading... |
430 | 430 |
431 friend class BuiltinFunctionTable; | 431 friend class BuiltinFunctionTable; |
432 friend class Isolate; | 432 friend class Isolate; |
433 | 433 |
434 DISALLOW_COPY_AND_ASSIGN(Builtins); | 434 DISALLOW_COPY_AND_ASSIGN(Builtins); |
435 }; | 435 }; |
436 | 436 |
437 } } // namespace v8::internal | 437 } } // namespace v8::internal |
438 | 438 |
439 #endif // V8_BUILTINS_H_ | 439 #endif // V8_BUILTINS_H_ |
OLD | NEW |