| OLD | NEW | 
|---|
| 1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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 #include "src/bootstrapper.h" | 5 #include "src/bootstrapper.h" | 
| 6 | 6 | 
| 7 #include "src/accessors.h" | 7 #include "src/accessors.h" | 
| 8 #include "src/api-natives.h" | 8 #include "src/api-natives.h" | 
| 9 #include "src/code-stubs.h" | 9 #include "src/code-stubs.h" | 
| 10 #include "src/extensions/externalize-string-extension.h" | 10 #include "src/extensions/externalize-string-extension.h" | 
| (...skipping 2531 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 2542 | 2542 | 
| 2543     // Install the Date.now, Date.parse and Date.UTC functions. | 2543     // Install the Date.now, Date.parse and Date.UTC functions. | 
| 2544     SimpleInstallFunction(date_fun, "now", Builtins::kDateNow, 0, false); | 2544     SimpleInstallFunction(date_fun, "now", Builtins::kDateNow, 0, false); | 
| 2545     SimpleInstallFunction(date_fun, "parse", Builtins::kDateParse, 1, false); | 2545     SimpleInstallFunction(date_fun, "parse", Builtins::kDateParse, 1, false); | 
| 2546     SimpleInstallFunction(date_fun, "UTC", Builtins::kDateUTC, 7, false); | 2546     SimpleInstallFunction(date_fun, "UTC", Builtins::kDateUTC, 7, false); | 
| 2547 | 2547 | 
| 2548     // Install the "constructor" property on the {prototype}. | 2548     // Install the "constructor" property on the {prototype}. | 
| 2549     JSObject::AddProperty(prototype, factory()->constructor_string(), date_fun, | 2549     JSObject::AddProperty(prototype, factory()->constructor_string(), date_fun, | 
| 2550                           DONT_ENUM); | 2550                           DONT_ENUM); | 
| 2551 | 2551 | 
| 2552     // Install the toISOString and valueOf functions. | 2552     // Install the Date.prototype methods. | 
|  | 2553     SimpleInstallFunction(prototype, "toString", | 
|  | 2554                           Builtins::kDatePrototypeToString, 0, false); | 
|  | 2555     SimpleInstallFunction(prototype, "toDateString", | 
|  | 2556                           Builtins::kDatePrototypeToDateString, 0, false); | 
|  | 2557     SimpleInstallFunction(prototype, "toTimeString", | 
|  | 2558                           Builtins::kDatePrototypeToTimeString, 0, false); | 
|  | 2559     SimpleInstallFunction(prototype, "toGMTString", | 
|  | 2560                           Builtins::kDatePrototypeToUTCString, 0, false); | 
| 2553     SimpleInstallFunction(prototype, "toISOString", | 2561     SimpleInstallFunction(prototype, "toISOString", | 
| 2554                           Builtins::kDatePrototypeToISOString, 0, false); | 2562                           Builtins::kDatePrototypeToISOString, 0, false); | 
|  | 2563     SimpleInstallFunction(prototype, "toUTCString", | 
|  | 2564                           Builtins::kDatePrototypeToUTCString, 0, false); | 
| 2555     SimpleInstallFunction(prototype, "getDate", Builtins::kDatePrototypeGetDate, | 2565     SimpleInstallFunction(prototype, "getDate", Builtins::kDatePrototypeGetDate, | 
| 2556                           0, true); | 2566                           0, true); | 
|  | 2567     SimpleInstallFunction(prototype, "setDate", Builtins::kDatePrototypeSetDate, | 
|  | 2568                           1, false); | 
| 2557     SimpleInstallFunction(prototype, "getDay", Builtins::kDatePrototypeGetDay, | 2569     SimpleInstallFunction(prototype, "getDay", Builtins::kDatePrototypeGetDay, | 
| 2558                           0, true); | 2570                           0, true); | 
| 2559     SimpleInstallFunction(prototype, "getFullYear", | 2571     SimpleInstallFunction(prototype, "getFullYear", | 
| 2560                           Builtins::kDatePrototypeGetFullYear, 0, true); | 2572                           Builtins::kDatePrototypeGetFullYear, 0, true); | 
|  | 2573     SimpleInstallFunction(prototype, "setFullYear", | 
|  | 2574                           Builtins::kDatePrototypeSetFullYear, 3, false); | 
| 2561     SimpleInstallFunction(prototype, "getHours", | 2575     SimpleInstallFunction(prototype, "getHours", | 
| 2562                           Builtins::kDatePrototypeGetHours, 0, true); | 2576                           Builtins::kDatePrototypeGetHours, 0, true); | 
|  | 2577     SimpleInstallFunction(prototype, "setHours", | 
|  | 2578                           Builtins::kDatePrototypeSetHours, 4, false); | 
| 2563     SimpleInstallFunction(prototype, "getMilliseconds", | 2579     SimpleInstallFunction(prototype, "getMilliseconds", | 
| 2564                           Builtins::kDatePrototypeGetMilliseconds, 0, true); | 2580                           Builtins::kDatePrototypeGetMilliseconds, 0, true); | 
|  | 2581     SimpleInstallFunction(prototype, "setMilliseconds", | 
|  | 2582                           Builtins::kDatePrototypeSetMilliseconds, 1, false); | 
| 2565     SimpleInstallFunction(prototype, "getMinutes", | 2583     SimpleInstallFunction(prototype, "getMinutes", | 
| 2566                           Builtins::kDatePrototypeGetMinutes, 0, true); | 2584                           Builtins::kDatePrototypeGetMinutes, 0, true); | 
|  | 2585     SimpleInstallFunction(prototype, "setMinutes", | 
|  | 2586                           Builtins::kDatePrototypeSetMinutes, 3, false); | 
| 2567     SimpleInstallFunction(prototype, "getMonth", | 2587     SimpleInstallFunction(prototype, "getMonth", | 
| 2568                           Builtins::kDatePrototypeGetMonth, 0, true); | 2588                           Builtins::kDatePrototypeGetMonth, 0, true); | 
|  | 2589     SimpleInstallFunction(prototype, "setMonth", | 
|  | 2590                           Builtins::kDatePrototypeSetMonth, 2, false); | 
| 2569     SimpleInstallFunction(prototype, "getSeconds", | 2591     SimpleInstallFunction(prototype, "getSeconds", | 
| 2570                           Builtins::kDatePrototypeGetSeconds, 0, true); | 2592                           Builtins::kDatePrototypeGetSeconds, 0, true); | 
|  | 2593     SimpleInstallFunction(prototype, "setSeconds", | 
|  | 2594                           Builtins::kDatePrototypeSetSeconds, 2, false); | 
| 2571     SimpleInstallFunction(prototype, "getTime", Builtins::kDatePrototypeGetTime, | 2595     SimpleInstallFunction(prototype, "getTime", Builtins::kDatePrototypeGetTime, | 
| 2572                           0, true); | 2596                           0, true); | 
|  | 2597     SimpleInstallFunction(prototype, "setTime", Builtins::kDatePrototypeSetTime, | 
|  | 2598                           1, false); | 
| 2573     SimpleInstallFunction(prototype, "getTimezoneOffset", | 2599     SimpleInstallFunction(prototype, "getTimezoneOffset", | 
| 2574                           Builtins::kDatePrototypeGetTimezoneOffset, 0, true); | 2600                           Builtins::kDatePrototypeGetTimezoneOffset, 0, true); | 
| 2575     SimpleInstallFunction(prototype, "getUTCDate", | 2601     SimpleInstallFunction(prototype, "getUTCDate", | 
| 2576                           Builtins::kDatePrototypeGetUTCDate, 0, true); | 2602                           Builtins::kDatePrototypeGetUTCDate, 0, true); | 
|  | 2603     SimpleInstallFunction(prototype, "setUTCDate", | 
|  | 2604                           Builtins::kDatePrototypeSetUTCDate, 1, false); | 
| 2577     SimpleInstallFunction(prototype, "getUTCDay", | 2605     SimpleInstallFunction(prototype, "getUTCDay", | 
| 2578                           Builtins::kDatePrototypeGetUTCDay, 0, true); | 2606                           Builtins::kDatePrototypeGetUTCDay, 0, true); | 
| 2579     SimpleInstallFunction(prototype, "getUTCFullYear", | 2607     SimpleInstallFunction(prototype, "getUTCFullYear", | 
| 2580                           Builtins::kDatePrototypeGetUTCFullYear, 0, true); | 2608                           Builtins::kDatePrototypeGetUTCFullYear, 0, true); | 
|  | 2609     SimpleInstallFunction(prototype, "setUTCFullYear", | 
|  | 2610                           Builtins::kDatePrototypeSetUTCFullYear, 3, false); | 
| 2581     SimpleInstallFunction(prototype, "getUTCHours", | 2611     SimpleInstallFunction(prototype, "getUTCHours", | 
| 2582                           Builtins::kDatePrototypeGetUTCHours, 0, true); | 2612                           Builtins::kDatePrototypeGetUTCHours, 0, true); | 
|  | 2613     SimpleInstallFunction(prototype, "setUTCHours", | 
|  | 2614                           Builtins::kDatePrototypeSetUTCHours, 4, false); | 
| 2583     SimpleInstallFunction(prototype, "getUTCMilliseconds", | 2615     SimpleInstallFunction(prototype, "getUTCMilliseconds", | 
| 2584                           Builtins::kDatePrototypeGetUTCMilliseconds, 0, true); | 2616                           Builtins::kDatePrototypeGetUTCMilliseconds, 0, true); | 
|  | 2617     SimpleInstallFunction(prototype, "setUTCMilliseconds", | 
|  | 2618                           Builtins::kDatePrototypeSetUTCMilliseconds, 1, false); | 
| 2585     SimpleInstallFunction(prototype, "getUTCMinutes", | 2619     SimpleInstallFunction(prototype, "getUTCMinutes", | 
| 2586                           Builtins::kDatePrototypeGetUTCMinutes, 0, true); | 2620                           Builtins::kDatePrototypeGetUTCMinutes, 0, true); | 
|  | 2621     SimpleInstallFunction(prototype, "setUTCMinutes", | 
|  | 2622                           Builtins::kDatePrototypeSetUTCMinutes, 3, false); | 
| 2587     SimpleInstallFunction(prototype, "getUTCMonth", | 2623     SimpleInstallFunction(prototype, "getUTCMonth", | 
| 2588                           Builtins::kDatePrototypeGetUTCMonth, 0, true); | 2624                           Builtins::kDatePrototypeGetUTCMonth, 0, true); | 
|  | 2625     SimpleInstallFunction(prototype, "setUTCMonth", | 
|  | 2626                           Builtins::kDatePrototypeSetUTCMonth, 2, false); | 
| 2589     SimpleInstallFunction(prototype, "getUTCSeconds", | 2627     SimpleInstallFunction(prototype, "getUTCSeconds", | 
| 2590                           Builtins::kDatePrototypeGetUTCSeconds, 0, true); | 2628                           Builtins::kDatePrototypeGetUTCSeconds, 0, true); | 
|  | 2629     SimpleInstallFunction(prototype, "setUTCSeconds", | 
|  | 2630                           Builtins::kDatePrototypeSetUTCSeconds, 2, false); | 
| 2591     SimpleInstallFunction(prototype, "valueOf", Builtins::kDatePrototypeValueOf, | 2631     SimpleInstallFunction(prototype, "valueOf", Builtins::kDatePrototypeValueOf, | 
| 2592                           0, false); | 2632                           0, false); | 
|  | 2633     SimpleInstallFunction(prototype, "getYear", Builtins::kDatePrototypeGetYear, | 
|  | 2634                           0, true); | 
|  | 2635     SimpleInstallFunction(prototype, "setYear", Builtins::kDatePrototypeSetYear, | 
|  | 2636                           1, false); | 
|  | 2637 | 
|  | 2638 #ifndef V8_I18N_SUPPORT | 
|  | 2639     // Install i18n fallback functions. | 
|  | 2640     SimpleInstallFunction(prototype, "toLocaleString", | 
|  | 2641                           Builtins::kDatePrototypeToString, 0, false); | 
|  | 2642     SimpleInstallFunction(prototype, "toLocaleDateString", | 
|  | 2643                           Builtins::kDatePrototypeToDateString, 0, false); | 
|  | 2644     SimpleInstallFunction(prototype, "toLocaleTimeString", | 
|  | 2645                           Builtins::kDatePrototypeToTimeString, 0, false); | 
|  | 2646 #endif  // V8_I18N_SUPPORT | 
| 2593 | 2647 | 
| 2594     // Install the @@toPrimitive function. | 2648     // Install the @@toPrimitive function. | 
| 2595     Handle<JSFunction> to_primitive = InstallFunction( | 2649     Handle<JSFunction> to_primitive = InstallFunction( | 
| 2596         prototype, factory()->to_primitive_symbol(), JS_OBJECT_TYPE, | 2650         prototype, factory()->to_primitive_symbol(), JS_OBJECT_TYPE, | 
| 2597         JSObject::kHeaderSize, MaybeHandle<JSObject>(), | 2651         JSObject::kHeaderSize, MaybeHandle<JSObject>(), | 
| 2598         Builtins::kDatePrototypeToPrimitive, | 2652         Builtins::kDatePrototypeToPrimitive, | 
| 2599         static_cast<PropertyAttributes>(DONT_ENUM | READ_ONLY)); | 2653         static_cast<PropertyAttributes>(DONT_ENUM | READ_ONLY)); | 
| 2600 | 2654 | 
| 2601     // Set the expected parameters for @@toPrimitive to 1; required by builtin. | 2655     // Set the expected parameters for @@toPrimitive to 1; required by builtin. | 
| 2602     to_primitive->shared()->set_internal_formal_parameter_count(1); | 2656     to_primitive->shared()->set_internal_formal_parameter_count(1); | 
| (...skipping 868 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 3471 } | 3525 } | 
| 3472 | 3526 | 
| 3473 | 3527 | 
| 3474 // Called when the top-level V8 mutex is destroyed. | 3528 // Called when the top-level V8 mutex is destroyed. | 
| 3475 void Bootstrapper::FreeThreadResources() { | 3529 void Bootstrapper::FreeThreadResources() { | 
| 3476   DCHECK(!IsActive()); | 3530   DCHECK(!IsActive()); | 
| 3477 } | 3531 } | 
| 3478 | 3532 | 
| 3479 }  // namespace internal | 3533 }  // namespace internal | 
| 3480 }  // namespace v8 | 3534 }  // namespace v8 | 
| OLD | NEW | 
|---|