| 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/base/ieee754.h" | 9 #include "src/base/ieee754.h" |
| 10 #include "src/code-stubs.h" | 10 #include "src/code-stubs.h" |
| (...skipping 4058 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4069 HandleScope scope(isolate); | 4069 HandleScope scope(isolate); |
| 4070 Handle<JSGlobalObject> global(JSGlobalObject::cast( | 4070 Handle<JSGlobalObject> global(JSGlobalObject::cast( |
| 4071 native_context->global_object())); | 4071 native_context->global_object())); |
| 4072 | 4072 |
| 4073 Handle<JSObject> Error = isolate->error_function(); | 4073 Handle<JSObject> Error = isolate->error_function(); |
| 4074 Handle<String> name = | 4074 Handle<String> name = |
| 4075 factory->InternalizeOneByteString(STATIC_CHAR_VECTOR("stackTraceLimit")); | 4075 factory->InternalizeOneByteString(STATIC_CHAR_VECTOR("stackTraceLimit")); |
| 4076 Handle<Smi> stack_trace_limit(Smi::FromInt(FLAG_stack_trace_limit), isolate); | 4076 Handle<Smi> stack_trace_limit(Smi::FromInt(FLAG_stack_trace_limit), isolate); |
| 4077 JSObject::AddProperty(Error, name, stack_trace_limit, NONE); | 4077 JSObject::AddProperty(Error, name, stack_trace_limit, NONE); |
| 4078 | 4078 |
| 4079 // Expose the debug global object in global if a name for it is specified. | |
| 4080 if (FLAG_expose_debug_as != NULL && strlen(FLAG_expose_debug_as) != 0) { | |
| 4081 // If loading fails we just bail out without installing the | |
| 4082 // debugger but without tanking the whole context. | |
| 4083 Debug* debug = isolate->debug(); | |
| 4084 if (!debug->Load()) return true; | |
| 4085 Handle<Context> debug_context = debug->debug_context(); | |
| 4086 // Set the security token for the debugger context to the same as | |
| 4087 // the shell native context to allow calling between these (otherwise | |
| 4088 // exposing debug global object doesn't make much sense). | |
| 4089 debug_context->set_security_token(native_context->security_token()); | |
| 4090 Handle<String> debug_string = | |
| 4091 factory->InternalizeUtf8String(FLAG_expose_debug_as); | |
| 4092 uint32_t index; | |
| 4093 if (debug_string->AsArrayIndex(&index)) return true; | |
| 4094 Handle<Object> global_proxy(debug_context->global_proxy(), isolate); | |
| 4095 JSObject::AddProperty(global, debug_string, global_proxy, DONT_ENUM); | |
| 4096 } | |
| 4097 | |
| 4098 WasmJs::Install(isolate, global); | 4079 WasmJs::Install(isolate, global); |
| 4099 | 4080 |
| 4100 return true; | 4081 return true; |
| 4101 } | 4082 } |
| 4102 | 4083 |
| 4103 | 4084 |
| 4104 static uint32_t Hash(RegisteredExtension* extension) { | 4085 static uint32_t Hash(RegisteredExtension* extension) { |
| 4105 return v8::internal::ComputePointerHash(extension); | 4086 return v8::internal::ComputePointerHash(extension); |
| 4106 } | 4087 } |
| 4107 | 4088 |
| (...skipping 567 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4675 } | 4656 } |
| 4676 | 4657 |
| 4677 | 4658 |
| 4678 // Called when the top-level V8 mutex is destroyed. | 4659 // Called when the top-level V8 mutex is destroyed. |
| 4679 void Bootstrapper::FreeThreadResources() { | 4660 void Bootstrapper::FreeThreadResources() { |
| 4680 DCHECK(!IsActive()); | 4661 DCHECK(!IsActive()); |
| 4681 } | 4662 } |
| 4682 | 4663 |
| 4683 } // namespace internal | 4664 } // namespace internal |
| 4684 } // namespace v8 | 4665 } // namespace v8 |
| OLD | NEW |