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 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
211 \ | 211 \ |
212 V(StringConstructCode, BUILTIN, UNINITIALIZED, \ | 212 V(StringConstructCode, BUILTIN, UNINITIALIZED, \ |
213 Code::kNoExtraICState) \ | 213 Code::kNoExtraICState) \ |
214 \ | 214 \ |
215 V(OnStackReplacement, BUILTIN, UNINITIALIZED, \ | 215 V(OnStackReplacement, BUILTIN, UNINITIALIZED, \ |
216 Code::kNoExtraICState) \ | 216 Code::kNoExtraICState) \ |
217 V(InterruptCheck, BUILTIN, UNINITIALIZED, \ | 217 V(InterruptCheck, BUILTIN, UNINITIALIZED, \ |
218 Code::kNoExtraICState) \ | 218 Code::kNoExtraICState) \ |
219 V(StackCheck, BUILTIN, UNINITIALIZED, \ | 219 V(StackCheck, BUILTIN, UNINITIALIZED, \ |
220 Code::kNoExtraICState) \ | 220 Code::kNoExtraICState) \ |
| 221 \ |
| 222 V(MarkCodeAsExecutedOnce, BUILTIN, UNINITIALIZED, \ |
| 223 Code::kNoExtraICState) \ |
| 224 V(MarkCodeAsExecutedTwice, BUILTIN, UNINITIALIZED, \ |
| 225 Code::kNoExtraICState) \ |
221 CODE_AGE_LIST_WITH_ARG(DECLARE_CODE_AGE_BUILTIN, V) | 226 CODE_AGE_LIST_WITH_ARG(DECLARE_CODE_AGE_BUILTIN, V) |
222 | 227 |
223 #ifdef ENABLE_DEBUGGER_SUPPORT | 228 #ifdef ENABLE_DEBUGGER_SUPPORT |
224 // Define list of builtins used by the debugger implemented in assembly. | 229 // Define list of builtins used by the debugger implemented in assembly. |
225 #define BUILTIN_LIST_DEBUG_A(V) \ | 230 #define BUILTIN_LIST_DEBUG_A(V) \ |
226 V(Return_DebugBreak, BUILTIN, DEBUG_STUB, \ | 231 V(Return_DebugBreak, BUILTIN, DEBUG_STUB, \ |
227 DEBUG_BREAK) \ | 232 DEBUG_BREAK) \ |
228 V(CallFunctionStub_DebugBreak, BUILTIN, DEBUG_STUB, \ | 233 V(CallFunctionStub_DebugBreak, BUILTIN, DEBUG_STUB, \ |
229 DEBUG_BREAK) \ | 234 DEBUG_BREAK) \ |
230 V(CallFunctionStub_Recording_DebugBreak, BUILTIN, DEBUG_STUB, \ | 235 V(CallFunctionStub_Recording_DebugBreak, BUILTIN, DEBUG_STUB, \ |
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
405 static void Generate_StackCheck(MacroAssembler* masm); | 410 static void Generate_StackCheck(MacroAssembler* masm); |
406 | 411 |
407 #define DECLARE_CODE_AGE_BUILTIN_GENERATOR(C) \ | 412 #define DECLARE_CODE_AGE_BUILTIN_GENERATOR(C) \ |
408 static void Generate_Make##C##CodeYoungAgainEvenMarking( \ | 413 static void Generate_Make##C##CodeYoungAgainEvenMarking( \ |
409 MacroAssembler* masm); \ | 414 MacroAssembler* masm); \ |
410 static void Generate_Make##C##CodeYoungAgainOddMarking( \ | 415 static void Generate_Make##C##CodeYoungAgainOddMarking( \ |
411 MacroAssembler* masm); | 416 MacroAssembler* masm); |
412 CODE_AGE_LIST(DECLARE_CODE_AGE_BUILTIN_GENERATOR) | 417 CODE_AGE_LIST(DECLARE_CODE_AGE_BUILTIN_GENERATOR) |
413 #undef DECLARE_CODE_AGE_BUILTIN_GENERATOR | 418 #undef DECLARE_CODE_AGE_BUILTIN_GENERATOR |
414 | 419 |
| 420 static void Generate_MarkCodeAsExecutedOnce(MacroAssembler* masm); |
| 421 static void Generate_MarkCodeAsExecutedTwice(MacroAssembler* masm); |
| 422 |
415 static void InitBuiltinFunctionTable(); | 423 static void InitBuiltinFunctionTable(); |
416 | 424 |
417 bool initialized_; | 425 bool initialized_; |
418 | 426 |
419 friend class BuiltinFunctionTable; | 427 friend class BuiltinFunctionTable; |
420 friend class Isolate; | 428 friend class Isolate; |
421 | 429 |
422 DISALLOW_COPY_AND_ASSIGN(Builtins); | 430 DISALLOW_COPY_AND_ASSIGN(Builtins); |
423 }; | 431 }; |
424 | 432 |
425 } } // namespace v8::internal | 433 } } // namespace v8::internal |
426 | 434 |
427 #endif // V8_BUILTINS_H_ | 435 #endif // V8_BUILTINS_H_ |
OLD | NEW |