| 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 3000 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3011 static const char* harmony_function_sent_natives[] = {nullptr}; | 3011 static const char* harmony_function_sent_natives[] = {nullptr}; |
| 3012 static const char* promise_extra_natives[] = {"native promise-extra.js", | 3012 static const char* promise_extra_natives[] = {"native promise-extra.js", |
| 3013 nullptr}; | 3013 nullptr}; |
| 3014 static const char* harmony_object_values_entries_natives[] = {nullptr}; | 3014 static const char* harmony_object_values_entries_natives[] = {nullptr}; |
| 3015 static const char* harmony_object_own_property_descriptors_natives[] = { | 3015 static const char* harmony_object_own_property_descriptors_natives[] = { |
| 3016 nullptr}; | 3016 nullptr}; |
| 3017 static const char* harmony_array_prototype_values_natives[] = {nullptr}; | 3017 static const char* harmony_array_prototype_values_natives[] = {nullptr}; |
| 3018 static const char* harmony_exponentiation_operator_natives[] = {nullptr}; | 3018 static const char* harmony_exponentiation_operator_natives[] = {nullptr}; |
| 3019 static const char* harmony_string_padding_natives[] = { | 3019 static const char* harmony_string_padding_natives[] = { |
| 3020 "native harmony-string-padding.js", nullptr}; | 3020 "native harmony-string-padding.js", nullptr}; |
| 3021 static const char* icu_case_mapping_natives[] = {"native icu-case-mapping.js", |
| 3022 nullptr}; |
| 3021 | 3023 |
| 3022 for (int i = ExperimentalNatives::GetDebuggerCount(); | 3024 for (int i = ExperimentalNatives::GetDebuggerCount(); |
| 3023 i < ExperimentalNatives::GetBuiltinsCount(); i++) { | 3025 i < ExperimentalNatives::GetBuiltinsCount(); i++) { |
| 3024 #define INSTALL_EXPERIMENTAL_NATIVES(id, desc) \ | 3026 #define INSTALL_EXPERIMENTAL_NATIVES(id, desc) \ |
| 3025 if (FLAG_##id) { \ | 3027 if (FLAG_##id) { \ |
| 3026 for (size_t j = 0; id##_natives[j] != NULL; j++) { \ | 3028 for (size_t j = 0; id##_natives[j] != NULL; j++) { \ |
| 3027 Vector<const char> script_name = ExperimentalNatives::GetScriptName(i); \ | 3029 Vector<const char> script_name = ExperimentalNatives::GetScriptName(i); \ |
| 3028 if (strncmp(script_name.start(), id##_natives[j], \ | 3030 if (strncmp(script_name.start(), id##_natives[j], \ |
| 3029 script_name.length()) == 0) { \ | 3031 script_name.length()) == 0) { \ |
| 3030 if (!Bootstrapper::CompileExperimentalBuiltin(isolate(), i)) { \ | 3032 if (!Bootstrapper::CompileExperimentalBuiltin(isolate(), i)) { \ |
| 3031 return false; \ | 3033 return false; \ |
| 3032 } \ | 3034 } \ |
| 3033 } \ | 3035 } \ |
| 3034 } \ | 3036 } \ |
| 3035 } | 3037 } |
| 3036 HARMONY_INPROGRESS(INSTALL_EXPERIMENTAL_NATIVES); | 3038 HARMONY_INPROGRESS(INSTALL_EXPERIMENTAL_NATIVES); |
| 3037 HARMONY_STAGED(INSTALL_EXPERIMENTAL_NATIVES); | 3039 HARMONY_STAGED(INSTALL_EXPERIMENTAL_NATIVES); |
| 3038 HARMONY_SHIPPING(INSTALL_EXPERIMENTAL_NATIVES); | 3040 HARMONY_SHIPPING(INSTALL_EXPERIMENTAL_NATIVES); |
| 3039 INSTALL_EXPERIMENTAL_NATIVES(promise_extra, ""); | 3041 INSTALL_EXPERIMENTAL_NATIVES(promise_extra, ""); |
| 3042 INSTALL_EXPERIMENTAL_NATIVES(icu_case_mapping, ""); |
| 3040 #undef INSTALL_EXPERIMENTAL_NATIVES | 3043 #undef INSTALL_EXPERIMENTAL_NATIVES |
| 3041 } | 3044 } |
| 3042 | 3045 |
| 3043 if (!CallUtilsFunction(isolate(), "PostExperimentals")) return false; | 3046 if (!CallUtilsFunction(isolate(), "PostExperimentals")) return false; |
| 3044 | 3047 |
| 3045 InstallExperimentalBuiltinFunctionIds(); | 3048 InstallExperimentalBuiltinFunctionIds(); |
| 3046 return true; | 3049 return true; |
| 3047 } | 3050 } |
| 3048 | 3051 |
| 3049 | 3052 |
| (...skipping 637 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3687 } | 3690 } |
| 3688 | 3691 |
| 3689 | 3692 |
| 3690 // Called when the top-level V8 mutex is destroyed. | 3693 // Called when the top-level V8 mutex is destroyed. |
| 3691 void Bootstrapper::FreeThreadResources() { | 3694 void Bootstrapper::FreeThreadResources() { |
| 3692 DCHECK(!IsActive()); | 3695 DCHECK(!IsActive()); |
| 3693 } | 3696 } |
| 3694 | 3697 |
| 3695 } // namespace internal | 3698 } // namespace internal |
| 3696 } // namespace v8 | 3699 } // namespace v8 |
| OLD | NEW |