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/runtime/runtime-utils.h" | 5 #include "src/runtime/runtime-utils.h" |
6 | 6 |
7 #include <memory> | 7 #include <memory> |
8 | 8 |
9 #include "src/arguments.h" | 9 #include "src/arguments.h" |
10 #include "src/ast/prettyprinter.h" | 10 #include "src/ast/prettyprinter.h" |
(...skipping 25 matching lines...) Loading... |
36 CONVERT_ARG_HANDLE_CHECKED(JSObject, container, 0); | 36 CONVERT_ARG_HANDLE_CHECKED(JSObject, container, 0); |
37 CHECK(isolate->bootstrapper()->IsActive()); | 37 CHECK(isolate->bootstrapper()->IsActive()); |
38 JSObject::NormalizeProperties(container, KEEP_INOBJECT_PROPERTIES, 10, | 38 JSObject::NormalizeProperties(container, KEEP_INOBJECT_PROPERTIES, 10, |
39 "ExportFromRuntime"); | 39 "ExportFromRuntime"); |
40 Bootstrapper::ExportFromRuntime(isolate, container); | 40 Bootstrapper::ExportFromRuntime(isolate, container); |
41 JSObject::MigrateSlowToFast(container, 0, "ExportFromRuntime"); | 41 JSObject::MigrateSlowToFast(container, 0, "ExportFromRuntime"); |
42 return *container; | 42 return *container; |
43 } | 43 } |
44 | 44 |
45 | 45 |
46 RUNTIME_FUNCTION(Runtime_ExportExperimentalFromRuntime) { | |
47 HandleScope scope(isolate); | |
48 DCHECK_EQ(1, args.length()); | |
49 CONVERT_ARG_HANDLE_CHECKED(JSObject, container, 0); | |
50 CHECK(isolate->bootstrapper()->IsActive()); | |
51 JSObject::NormalizeProperties(container, KEEP_INOBJECT_PROPERTIES, 10, | |
52 "ExportExperimentalFromRuntime"); | |
53 Bootstrapper::ExportExperimentalFromRuntime(isolate, container); | |
54 JSObject::MigrateSlowToFast(container, 0, "ExportExperimentalFromRuntime"); | |
55 return *container; | |
56 } | |
57 | |
58 | |
59 RUNTIME_FUNCTION(Runtime_InstallToContext) { | 46 RUNTIME_FUNCTION(Runtime_InstallToContext) { |
60 HandleScope scope(isolate); | 47 HandleScope scope(isolate); |
61 DCHECK_EQ(1, args.length()); | 48 DCHECK_EQ(1, args.length()); |
62 CONVERT_ARG_HANDLE_CHECKED(JSArray, array, 0); | 49 CONVERT_ARG_HANDLE_CHECKED(JSArray, array, 0); |
63 CHECK(array->HasFastElements()); | 50 CHECK(array->HasFastElements()); |
64 CHECK(isolate->bootstrapper()->IsActive()); | 51 CHECK(isolate->bootstrapper()->IsActive()); |
65 Handle<Context> native_context = isolate->native_context(); | 52 Handle<Context> native_context = isolate->native_context(); |
66 Handle<FixedArray> fixed_array(FixedArray::cast(array->elements())); | 53 Handle<FixedArray> fixed_array(FixedArray::cast(array->elements())); |
67 int length = Smi::cast(array->length())->value(); | 54 int length = Smi::cast(array->length())->value(); |
68 for (int i = 0; i < length; i += 2) { | 55 for (int i = 0; i < length; i += 2) { |
(...skipping 423 matching lines...) Loading... |
492 HandleScope scope(isolate); | 479 HandleScope scope(isolate); |
493 DCHECK_EQ(1, args.length()); | 480 DCHECK_EQ(1, args.length()); |
494 CONVERT_ARG_HANDLE_CHECKED(JSFunction, target, 0); | 481 CONVERT_ARG_HANDLE_CHECKED(JSFunction, target, 0); |
495 Handle<JSObject> global_proxy(target->global_proxy(), isolate); | 482 Handle<JSObject> global_proxy(target->global_proxy(), isolate); |
496 return *isolate->factory()->ToBoolean( | 483 return *isolate->factory()->ToBoolean( |
497 Builtins::AllowDynamicFunction(isolate, target, global_proxy)); | 484 Builtins::AllowDynamicFunction(isolate, target, global_proxy)); |
498 } | 485 } |
499 | 486 |
500 } // namespace internal | 487 } // namespace internal |
501 } // namespace v8 | 488 } // namespace v8 |
OLD | NEW |