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/code-stubs.h" | 8 #include "src/code-stubs.h" |
9 #include "src/extensions/externalize-string-extension.h" | 9 #include "src/extensions/externalize-string-extension.h" |
10 #include "src/extensions/free-buffer-extension.h" | 10 #include "src/extensions/free-buffer-extension.h" |
(...skipping 1574 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1585 INSTALL_NATIVE(JSFunction, "EndPerformSplice", | 1585 INSTALL_NATIVE(JSFunction, "EndPerformSplice", |
1586 observers_end_perform_splice); | 1586 observers_end_perform_splice); |
1587 INSTALL_NATIVE(JSFunction, "NativeObjectObserve", | 1587 INSTALL_NATIVE(JSFunction, "NativeObjectObserve", |
1588 native_object_observe); | 1588 native_object_observe); |
1589 INSTALL_NATIVE(JSFunction, "NativeObjectGetNotifier", | 1589 INSTALL_NATIVE(JSFunction, "NativeObjectGetNotifier", |
1590 native_object_get_notifier); | 1590 native_object_get_notifier); |
1591 INSTALL_NATIVE(JSFunction, "NativeObjectNotifierPerformChange", | 1591 INSTALL_NATIVE(JSFunction, "NativeObjectNotifierPerformChange", |
1592 native_object_notifier_perform_change); | 1592 native_object_notifier_perform_change); |
1593 | 1593 |
1594 INSTALL_NATIVE(Symbol, "symbolIterator", iterator_symbol); | 1594 INSTALL_NATIVE(Symbol, "symbolIterator", iterator_symbol); |
1595 INSTALL_NATIVE(Symbol, "symbolUnscopables", unscopables_symbol); | |
1596 | 1595 |
1597 INSTALL_NATIVE_MATH(abs) | 1596 INSTALL_NATIVE_MATH(abs) |
1598 INSTALL_NATIVE_MATH(acos) | 1597 INSTALL_NATIVE_MATH(acos) |
1599 INSTALL_NATIVE_MATH(asin) | 1598 INSTALL_NATIVE_MATH(asin) |
1600 INSTALL_NATIVE_MATH(atan) | 1599 INSTALL_NATIVE_MATH(atan) |
1601 INSTALL_NATIVE_MATH(atan2) | 1600 INSTALL_NATIVE_MATH(atan2) |
1602 INSTALL_NATIVE_MATH(ceil) | 1601 INSTALL_NATIVE_MATH(ceil) |
1603 INSTALL_NATIVE_MATH(cos) | 1602 INSTALL_NATIVE_MATH(cos) |
1604 INSTALL_NATIVE_MATH(exp) | 1603 INSTALL_NATIVE_MATH(exp) |
1605 INSTALL_NATIVE_MATH(floor) | 1604 INSTALL_NATIVE_MATH(floor) |
(...skipping 10 matching lines...) Expand all Loading... |
1616 } | 1615 } |
1617 | 1616 |
1618 | 1617 |
1619 void Genesis::InstallExperimentalNativeFunctions() { | 1618 void Genesis::InstallExperimentalNativeFunctions() { |
1620 if (FLAG_harmony_proxies) { | 1619 if (FLAG_harmony_proxies) { |
1621 INSTALL_NATIVE(JSFunction, "DerivedHasTrap", derived_has_trap); | 1620 INSTALL_NATIVE(JSFunction, "DerivedHasTrap", derived_has_trap); |
1622 INSTALL_NATIVE(JSFunction, "DerivedGetTrap", derived_get_trap); | 1621 INSTALL_NATIVE(JSFunction, "DerivedGetTrap", derived_get_trap); |
1623 INSTALL_NATIVE(JSFunction, "DerivedSetTrap", derived_set_trap); | 1622 INSTALL_NATIVE(JSFunction, "DerivedSetTrap", derived_set_trap); |
1624 INSTALL_NATIVE(JSFunction, "ProxyEnumerate", proxy_enumerate); | 1623 INSTALL_NATIVE(JSFunction, "ProxyEnumerate", proxy_enumerate); |
1625 } | 1624 } |
| 1625 |
| 1626 if (FLAG_harmony_unscopables) { |
| 1627 INSTALL_NATIVE(Symbol, "symbolUnscopables", unscopables_symbol); |
| 1628 } |
1626 } | 1629 } |
1627 | 1630 |
1628 #undef INSTALL_NATIVE | 1631 #undef INSTALL_NATIVE |
1629 | 1632 |
1630 | 1633 |
1631 Handle<JSFunction> Genesis::InstallInternalArray( | 1634 Handle<JSFunction> Genesis::InstallInternalArray( |
1632 Handle<JSBuiltinsObject> builtins, | 1635 Handle<JSBuiltinsObject> builtins, |
1633 const char* name, | 1636 const char* name, |
1634 ElementsKind elements_kind) { | 1637 ElementsKind elements_kind) { |
1635 // --- I n t e r n a l A r r a y --- | 1638 // --- I n t e r n a l A r r a y --- |
(...skipping 416 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2052 | 2055 |
2053 | 2056 |
2054 bool Genesis::InstallExperimentalNatives() { | 2057 bool Genesis::InstallExperimentalNatives() { |
2055 for (int i = ExperimentalNatives::GetDebuggerCount(); | 2058 for (int i = ExperimentalNatives::GetDebuggerCount(); |
2056 i < ExperimentalNatives::GetBuiltinsCount(); | 2059 i < ExperimentalNatives::GetBuiltinsCount(); |
2057 i++) { | 2060 i++) { |
2058 INSTALL_EXPERIMENTAL_NATIVE(i, proxies, "proxy.js") | 2061 INSTALL_EXPERIMENTAL_NATIVE(i, proxies, "proxy.js") |
2059 INSTALL_EXPERIMENTAL_NATIVE(i, generators, "generator.js") | 2062 INSTALL_EXPERIMENTAL_NATIVE(i, generators, "generator.js") |
2060 INSTALL_EXPERIMENTAL_NATIVE(i, strings, "harmony-string.js") | 2063 INSTALL_EXPERIMENTAL_NATIVE(i, strings, "harmony-string.js") |
2061 INSTALL_EXPERIMENTAL_NATIVE(i, arrays, "harmony-array.js") | 2064 INSTALL_EXPERIMENTAL_NATIVE(i, arrays, "harmony-array.js") |
| 2065 INSTALL_EXPERIMENTAL_NATIVE(i, unscopables, "unscopables.js") |
2062 } | 2066 } |
2063 | 2067 |
2064 InstallExperimentalNativeFunctions(); | 2068 InstallExperimentalNativeFunctions(); |
2065 return true; | 2069 return true; |
2066 } | 2070 } |
2067 | 2071 |
2068 | 2072 |
2069 static void InstallBuiltinFunctionId(Handle<JSObject> holder, | 2073 static void InstallBuiltinFunctionId(Handle<JSObject> holder, |
2070 const char* function_name, | 2074 const char* function_name, |
2071 BuiltinFunctionId id) { | 2075 BuiltinFunctionId id) { |
(...skipping 617 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2689 return from + sizeof(NestingCounterType); | 2693 return from + sizeof(NestingCounterType); |
2690 } | 2694 } |
2691 | 2695 |
2692 | 2696 |
2693 // Called when the top-level V8 mutex is destroyed. | 2697 // Called when the top-level V8 mutex is destroyed. |
2694 void Bootstrapper::FreeThreadResources() { | 2698 void Bootstrapper::FreeThreadResources() { |
2695 DCHECK(!IsActive()); | 2699 DCHECK(!IsActive()); |
2696 } | 2700 } |
2697 | 2701 |
2698 } } // namespace v8::internal | 2702 } } // namespace v8::internal |
OLD | NEW |