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 331 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
342 F(HasDictionaryElements, 1, 1) \ | 342 F(HasDictionaryElements, 1, 1) \ |
343 F(HasExternalPixelElements, 1, 1) \ | 343 F(HasExternalPixelElements, 1, 1) \ |
344 F(HasExternalArrayElements, 1, 1) \ | 344 F(HasExternalArrayElements, 1, 1) \ |
345 F(HasExternalByteElements, 1, 1) \ | 345 F(HasExternalByteElements, 1, 1) \ |
346 F(HasExternalUnsignedByteElements, 1, 1) \ | 346 F(HasExternalUnsignedByteElements, 1, 1) \ |
347 F(HasExternalShortElements, 1, 1) \ | 347 F(HasExternalShortElements, 1, 1) \ |
348 F(HasExternalUnsignedShortElements, 1, 1) \ | 348 F(HasExternalUnsignedShortElements, 1, 1) \ |
349 F(HasExternalIntElements, 1, 1) \ | 349 F(HasExternalIntElements, 1, 1) \ |
350 F(HasExternalUnsignedIntElements, 1, 1) \ | 350 F(HasExternalUnsignedIntElements, 1, 1) \ |
351 F(HasExternalFloatElements, 1, 1) \ | 351 F(HasExternalFloatElements, 1, 1) \ |
352 F(HasExternalDoubleElements, 1, 1) | 352 F(HasExternalDoubleElements, 1, 1) \ |
| 353 /* profiler */ \ |
| 354 F(ProfilerResume, 0, 1) \ |
| 355 F(ProfilerPause, 0, 1) |
353 | 356 |
354 | 357 |
355 #ifdef ENABLE_DEBUGGER_SUPPORT | 358 #ifdef ENABLE_DEBUGGER_SUPPORT |
356 #define RUNTIME_FUNCTION_LIST_DEBUGGER_SUPPORT(F) \ | 359 #define RUNTIME_FUNCTION_LIST_DEBUGGER_SUPPORT(F) \ |
357 /* Debugger support*/ \ | 360 /* Debugger support*/ \ |
358 F(DebugBreak, 0, 1) \ | 361 F(DebugBreak, 0, 1) \ |
359 F(SetDebugEventListener, 2, 1) \ | 362 F(SetDebugEventListener, 2, 1) \ |
360 F(Break, 0, 1) \ | 363 F(Break, 0, 1) \ |
361 F(DebugGetPropertyDetails, 2, 1) \ | 364 F(DebugGetPropertyDetails, 2, 1) \ |
362 F(DebugGetProperty, 2, 1) \ | 365 F(DebugGetProperty, 2, 1) \ |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
420 F(GetLOLPath, 3, 1) \ | 423 F(GetLOLPath, 3, 1) \ |
421 F(InfoLOL, 2, 1) \ | 424 F(InfoLOL, 2, 1) \ |
422 F(PrintLOLObj, 1, 1) \ | 425 F(PrintLOLObj, 1, 1) \ |
423 F(ResetLOL, 0, 1) \ | 426 F(ResetLOL, 0, 1) \ |
424 F(SummarizeLOL, 3, 1) | 427 F(SummarizeLOL, 3, 1) |
425 | 428 |
426 #else | 429 #else |
427 #define RUNTIME_FUNCTION_LIST_DEBUGGER_SUPPORT(F) | 430 #define RUNTIME_FUNCTION_LIST_DEBUGGER_SUPPORT(F) |
428 #endif | 431 #endif |
429 | 432 |
430 #ifdef ENABLE_LOGGING_AND_PROFILING | |
431 #define RUNTIME_FUNCTION_LIST_PROFILER_SUPPORT(F) \ | |
432 F(ProfilerResume, 0, 1) \ | |
433 F(ProfilerPause, 0, 1) | |
434 #else | |
435 #define RUNTIME_FUNCTION_LIST_PROFILER_SUPPORT(F) | |
436 #endif | |
437 | |
438 #ifdef DEBUG | 433 #ifdef DEBUG |
439 #define RUNTIME_FUNCTION_LIST_DEBUG(F) \ | 434 #define RUNTIME_FUNCTION_LIST_DEBUG(F) \ |
440 /* Testing */ \ | 435 /* Testing */ \ |
441 F(ListNatives, 0, 1) | 436 F(ListNatives, 0, 1) |
442 #else | 437 #else |
443 #define RUNTIME_FUNCTION_LIST_DEBUG(F) | 438 #define RUNTIME_FUNCTION_LIST_DEBUG(F) |
444 #endif | 439 #endif |
445 | 440 |
446 // ---------------------------------------------------------------------------- | 441 // ---------------------------------------------------------------------------- |
447 // RUNTIME_FUNCTION_LIST defines all runtime functions accessed | 442 // RUNTIME_FUNCTION_LIST defines all runtime functions accessed |
448 // either directly by id (via the code generator), or indirectly | 443 // either directly by id (via the code generator), or indirectly |
449 // via a native call by name (from within JS code). | 444 // via a native call by name (from within JS code). |
450 | 445 |
451 #define RUNTIME_FUNCTION_LIST(F) \ | 446 #define RUNTIME_FUNCTION_LIST(F) \ |
452 RUNTIME_FUNCTION_LIST_ALWAYS_1(F) \ | 447 RUNTIME_FUNCTION_LIST_ALWAYS_1(F) \ |
453 RUNTIME_FUNCTION_LIST_ALWAYS_2(F) \ | 448 RUNTIME_FUNCTION_LIST_ALWAYS_2(F) \ |
454 RUNTIME_FUNCTION_LIST_DEBUG(F) \ | 449 RUNTIME_FUNCTION_LIST_DEBUG(F) \ |
455 RUNTIME_FUNCTION_LIST_DEBUGGER_SUPPORT(F) \ | 450 RUNTIME_FUNCTION_LIST_DEBUGGER_SUPPORT(F) |
456 RUNTIME_FUNCTION_LIST_PROFILER_SUPPORT(F) | |
457 | 451 |
458 // ---------------------------------------------------------------------------- | 452 // ---------------------------------------------------------------------------- |
459 // INLINE_FUNCTION_LIST defines all inlined functions accessed | 453 // INLINE_FUNCTION_LIST defines all inlined functions accessed |
460 // with a native call of the form %_name from within JS code. | 454 // with a native call of the form %_name from within JS code. |
461 // Entries have the form F(name, number of arguments, number of return values). | 455 // Entries have the form F(name, number of arguments, number of return values). |
462 #define INLINE_FUNCTION_LIST(F) \ | 456 #define INLINE_FUNCTION_LIST(F) \ |
463 F(IsSmi, 1, 1) \ | 457 F(IsSmi, 1, 1) \ |
464 F(IsNonNegativeSmi, 1, 1) \ | 458 F(IsNonNegativeSmi, 1, 1) \ |
465 F(IsArray, 1, 1) \ | 459 F(IsArray, 1, 1) \ |
466 F(IsRegExp, 1, 1) \ | 460 F(IsRegExp, 1, 1) \ |
(...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
655 Handle<Script> script, | 649 Handle<Script> script, |
656 int position); | 650 int position); |
657 | 651 |
658 // Helper functions used stubs. | 652 // Helper functions used stubs. |
659 static void PerformGC(Object* result); | 653 static void PerformGC(Object* result); |
660 }; | 654 }; |
661 | 655 |
662 } } // namespace v8::internal | 656 } } // namespace v8::internal |
663 | 657 |
664 #endif // V8_RUNTIME_H_ | 658 #endif // V8_RUNTIME_H_ |
OLD | NEW |