Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4)

Side by Side Diff: src/bootstrapper.cc

Issue 1418963009: Experimental support for RegExp lookbehind. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: fixed test cases Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 2033 matching lines...) Expand 10 before | Expand all | Expand 10 after
2044 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_sloppy_let) 2044 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_sloppy_let)
2045 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_rest_parameters) 2045 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_rest_parameters)
2046 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_default_parameters) 2046 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_default_parameters)
2047 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_destructuring) 2047 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_destructuring)
2048 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_object_observe) 2048 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_object_observe)
2049 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_regexps) 2049 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_regexps)
2050 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_unicode_regexps) 2050 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_unicode_regexps)
2051 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_completion) 2051 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_completion)
2052 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_tolength) 2052 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_tolength)
2053 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_do_expressions) 2053 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_do_expressions)
2054 EMPTY_INITIALIZE_GLOBAL_FOR_FEATURE(harmony_regexp_lookbehind)
2054 2055
2055 2056
2056 static void SimpleInstallFunction(Handle<JSObject>& base, const char* name, 2057 static void SimpleInstallFunction(Handle<JSObject>& base, const char* name,
2057 Builtins::Name call, int len, bool adapt) { 2058 Builtins::Name call, int len, bool adapt) {
2058 Handle<JSFunction> fun = 2059 Handle<JSFunction> fun =
2059 InstallFunction(base, name, JS_OBJECT_TYPE, JSObject::kHeaderSize, 2060 InstallFunction(base, name, JS_OBJECT_TYPE, JSObject::kHeaderSize,
2060 MaybeHandle<JSObject>(), call); 2061 MaybeHandle<JSObject>(), call);
2061 if (adapt) { 2062 if (adapt) {
2062 fun->shared()->set_internal_formal_parameter_count(len); 2063 fun->shared()->set_internal_formal_parameter_count(len);
2063 } else { 2064 } else {
(...skipping 482 matching lines...) Expand 10 before | Expand all | Expand 10 after
2546 "native harmony-object-observe.js", nullptr}; 2547 "native harmony-object-observe.js", nullptr};
2547 static const char* harmony_sharedarraybuffer_natives[] = { 2548 static const char* harmony_sharedarraybuffer_natives[] = {
2548 "native harmony-sharedarraybuffer.js", "native harmony-atomics.js", NULL}; 2549 "native harmony-sharedarraybuffer.js", "native harmony-atomics.js", NULL};
2549 static const char* harmony_concat_spreadable_natives[] = {nullptr}; 2550 static const char* harmony_concat_spreadable_natives[] = {nullptr};
2550 static const char* harmony_simd_natives[] = {"native harmony-simd.js", 2551 static const char* harmony_simd_natives[] = {"native harmony-simd.js",
2551 nullptr}; 2552 nullptr};
2552 static const char* harmony_tolength_natives[] = {nullptr}; 2553 static const char* harmony_tolength_natives[] = {nullptr};
2553 static const char* harmony_completion_natives[] = {nullptr}; 2554 static const char* harmony_completion_natives[] = {nullptr};
2554 static const char* harmony_do_expressions_natives[] = {nullptr}; 2555 static const char* harmony_do_expressions_natives[] = {nullptr};
2555 static const char* harmony_regexp_subclass_natives[] = {nullptr}; 2556 static const char* harmony_regexp_subclass_natives[] = {nullptr};
2557 static const char* harmony_regexp_lookbehind_natives[] = {nullptr};
2556 2558
2557 for (int i = ExperimentalNatives::GetDebuggerCount(); 2559 for (int i = ExperimentalNatives::GetDebuggerCount();
2558 i < ExperimentalNatives::GetBuiltinsCount(); i++) { 2560 i < ExperimentalNatives::GetBuiltinsCount(); i++) {
2559 #define INSTALL_EXPERIMENTAL_NATIVES(id, desc) \ 2561 #define INSTALL_EXPERIMENTAL_NATIVES(id, desc) \
2560 if (FLAG_##id) { \ 2562 if (FLAG_##id) { \
2561 for (size_t j = 0; id##_natives[j] != NULL; j++) { \ 2563 for (size_t j = 0; id##_natives[j] != NULL; j++) { \
2562 Vector<const char> script_name = ExperimentalNatives::GetScriptName(i); \ 2564 Vector<const char> script_name = ExperimentalNatives::GetScriptName(i); \
2563 if (strncmp(script_name.start(), id##_natives[j], \ 2565 if (strncmp(script_name.start(), id##_natives[j], \
2564 script_name.length()) == 0) { \ 2566 script_name.length()) == 0) { \
2565 if (!Bootstrapper::CompileExperimentalBuiltin(isolate(), i)) { \ 2567 if (!Bootstrapper::CompileExperimentalBuiltin(isolate(), i)) { \
(...skipping 668 matching lines...) Expand 10 before | Expand all | Expand 10 after
3234 } 3236 }
3235 3237
3236 3238
3237 // Called when the top-level V8 mutex is destroyed. 3239 // Called when the top-level V8 mutex is destroyed.
3238 void Bootstrapper::FreeThreadResources() { 3240 void Bootstrapper::FreeThreadResources() {
3239 DCHECK(!IsActive()); 3241 DCHECK(!IsActive());
3240 } 3242 }
3241 3243
3242 } // namespace internal 3244 } // namespace internal
3243 } // namespace v8 3245 } // namespace v8
OLDNEW
« no previous file with comments | « src/ast.cc ('k') | src/flag-definitions.h » ('j') | src/regexp/jsregexp.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698