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 #include "src/base/flags.h" | 8 #include "src/base/flags.h" |
9 #include "src/handles.h" | 9 #include "src/handles.h" |
10 | 10 |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
191 V(NotifyStubFailure, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 191 V(NotifyStubFailure, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
192 V(NotifyStubFailureSaveDoubles, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 192 V(NotifyStubFailureSaveDoubles, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
193 \ | 193 \ |
194 V(InterpreterEntryTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 194 V(InterpreterEntryTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
195 V(InterpreterExitTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 195 V(InterpreterExitTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
196 V(InterpreterPushArgsAndCall, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 196 V(InterpreterPushArgsAndCall, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
197 V(InterpreterPushArgsAndConstruct, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 197 V(InterpreterPushArgsAndConstruct, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
198 V(InterpreterNotifyDeoptimized, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 198 V(InterpreterNotifyDeoptimized, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
199 V(InterpreterNotifySoftDeoptimized, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 199 V(InterpreterNotifySoftDeoptimized, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
200 V(InterpreterNotifyLazyDeoptimized, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 200 V(InterpreterNotifyLazyDeoptimized, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
201 V(InterpreterEnterExceptionHandler, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 201 V(InterpreterEnterBytecodeDispatch, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
202 \ | 202 \ |
203 V(LoadIC_Miss, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 203 V(LoadIC_Miss, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
204 V(KeyedLoadIC_Miss, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 204 V(KeyedLoadIC_Miss, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
205 V(StoreIC_Miss, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 205 V(StoreIC_Miss, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
206 V(KeyedStoreIC_Miss, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 206 V(KeyedStoreIC_Miss, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
207 V(LoadIC_Getter_ForDeopt, LOAD_IC, MONOMORPHIC, kNoExtraICState) \ | 207 V(LoadIC_Getter_ForDeopt, LOAD_IC, MONOMORPHIC, kNoExtraICState) \ |
208 V(KeyedLoadIC_Megamorphic, KEYED_LOAD_IC, MEGAMORPHIC, kNoExtraICState) \ | 208 V(KeyedLoadIC_Megamorphic, KEYED_LOAD_IC, MEGAMORPHIC, kNoExtraICState) \ |
209 \ | 209 \ |
210 V(KeyedLoadIC_Megamorphic_Strong, KEYED_LOAD_IC, MEGAMORPHIC, \ | 210 V(KeyedLoadIC_Megamorphic_Strong, KEYED_LOAD_IC, MEGAMORPHIC, \ |
211 LoadICState::kStrongModeState) \ | 211 LoadICState::kStrongModeState) \ |
(...skipping 290 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
502 static void Generate_InterruptCheck(MacroAssembler* masm); | 502 static void Generate_InterruptCheck(MacroAssembler* masm); |
503 static void Generate_StackCheck(MacroAssembler* masm); | 503 static void Generate_StackCheck(MacroAssembler* masm); |
504 | 504 |
505 static void Generate_InterpreterEntryTrampoline(MacroAssembler* masm); | 505 static void Generate_InterpreterEntryTrampoline(MacroAssembler* masm); |
506 static void Generate_InterpreterExitTrampoline(MacroAssembler* masm); | 506 static void Generate_InterpreterExitTrampoline(MacroAssembler* masm); |
507 static void Generate_InterpreterPushArgsAndCall(MacroAssembler* masm); | 507 static void Generate_InterpreterPushArgsAndCall(MacroAssembler* masm); |
508 static void Generate_InterpreterPushArgsAndConstruct(MacroAssembler* masm); | 508 static void Generate_InterpreterPushArgsAndConstruct(MacroAssembler* masm); |
509 static void Generate_InterpreterNotifyDeoptimized(MacroAssembler* masm); | 509 static void Generate_InterpreterNotifyDeoptimized(MacroAssembler* masm); |
510 static void Generate_InterpreterNotifySoftDeoptimized(MacroAssembler* masm); | 510 static void Generate_InterpreterNotifySoftDeoptimized(MacroAssembler* masm); |
511 static void Generate_InterpreterNotifyLazyDeoptimized(MacroAssembler* masm); | 511 static void Generate_InterpreterNotifyLazyDeoptimized(MacroAssembler* masm); |
512 static void Generate_InterpreterEnterExceptionHandler(MacroAssembler* masm); | 512 static void Generate_InterpreterEnterBytecodeDispatch(MacroAssembler* masm); |
513 | 513 |
514 #define DECLARE_CODE_AGE_BUILTIN_GENERATOR(C) \ | 514 #define DECLARE_CODE_AGE_BUILTIN_GENERATOR(C) \ |
515 static void Generate_Make##C##CodeYoungAgainEvenMarking( \ | 515 static void Generate_Make##C##CodeYoungAgainEvenMarking( \ |
516 MacroAssembler* masm); \ | 516 MacroAssembler* masm); \ |
517 static void Generate_Make##C##CodeYoungAgainOddMarking( \ | 517 static void Generate_Make##C##CodeYoungAgainOddMarking( \ |
518 MacroAssembler* masm); | 518 MacroAssembler* masm); |
519 CODE_AGE_LIST(DECLARE_CODE_AGE_BUILTIN_GENERATOR) | 519 CODE_AGE_LIST(DECLARE_CODE_AGE_BUILTIN_GENERATOR) |
520 #undef DECLARE_CODE_AGE_BUILTIN_GENERATOR | 520 #undef DECLARE_CODE_AGE_BUILTIN_GENERATOR |
521 | 521 |
522 static void Generate_MarkCodeAsToBeExecutedOnce(MacroAssembler* masm); | 522 static void Generate_MarkCodeAsToBeExecutedOnce(MacroAssembler* masm); |
523 static void Generate_MarkCodeAsExecutedOnce(MacroAssembler* masm); | 523 static void Generate_MarkCodeAsExecutedOnce(MacroAssembler* masm); |
524 static void Generate_MarkCodeAsExecutedTwice(MacroAssembler* masm); | 524 static void Generate_MarkCodeAsExecutedTwice(MacroAssembler* masm); |
525 | 525 |
526 static void InitBuiltinFunctionTable(); | 526 static void InitBuiltinFunctionTable(); |
527 | 527 |
528 bool initialized_; | 528 bool initialized_; |
529 | 529 |
530 friend class BuiltinFunctionTable; | 530 friend class BuiltinFunctionTable; |
531 friend class Isolate; | 531 friend class Isolate; |
532 | 532 |
533 DISALLOW_COPY_AND_ASSIGN(Builtins); | 533 DISALLOW_COPY_AND_ASSIGN(Builtins); |
534 }; | 534 }; |
535 | 535 |
536 } // namespace internal | 536 } // namespace internal |
537 } // namespace v8 | 537 } // namespace v8 |
538 | 538 |
539 #endif // V8_BUILTINS_H_ | 539 #endif // V8_BUILTINS_H_ |
OLD | NEW |