| 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/utils/random-number-generator.h" |     9 #include "src/base/utils/random-number-generator.h" | 
|    10 #include "src/code-stubs.h" |    10 #include "src/code-stubs.h" | 
| (...skipping 1289 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  1300     native_context()->set_js_map_fun(*js_map_fun); |  1300     native_context()->set_js_map_fun(*js_map_fun); | 
|  1301   } |  1301   } | 
|  1302  |  1302  | 
|  1303   {  // -- S e t |  1303   {  // -- S e t | 
|  1304     Handle<JSFunction> js_set_fun = InstallFunction( |  1304     Handle<JSFunction> js_set_fun = InstallFunction( | 
|  1305         global, "Set", JS_SET_TYPE, JSSet::kSize, |  1305         global, "Set", JS_SET_TYPE, JSSet::kSize, | 
|  1306         isolate->initial_object_prototype(), Builtins::kIllegal); |  1306         isolate->initial_object_prototype(), Builtins::kIllegal); | 
|  1307     native_context()->set_js_set_fun(*js_set_fun); |  1307     native_context()->set_js_set_fun(*js_set_fun); | 
|  1308   } |  1308   } | 
|  1309  |  1309  | 
|  1310   {  // Set up the iterator result object |  1310   {  // -- I t e r a t o r R e s u l t | 
|  1311     STATIC_ASSERT(JSGeneratorObject::kResultPropertyCount == 2); |  1311     Handle<Map> map = | 
|  1312     Handle<JSFunction> object_function(native_context()->object_function()); |  1312         factory->NewMap(JS_ITERATOR_RESULT_TYPE, JSIteratorResult::kSize); | 
|  1313     Handle<Map> iterator_result_map = |  1313     Map::SetPrototype(map, isolate->initial_object_prototype()); | 
|  1314         Map::Create(isolate, JSGeneratorObject::kResultPropertyCount); |  1314     Map::EnsureDescriptorSlack(map, 2); | 
|  1315     DCHECK_EQ(JSGeneratorObject::kResultSize, |  | 
|  1316               iterator_result_map->instance_size()); |  | 
|  1317     DCHECK_EQ(JSGeneratorObject::kResultPropertyCount, |  | 
|  1318               iterator_result_map->GetInObjectProperties()); |  | 
|  1319     Map::EnsureDescriptorSlack(iterator_result_map, |  | 
|  1320                                JSGeneratorObject::kResultPropertyCount); |  | 
|  1321  |  1315  | 
|  1322     DataDescriptor value_descr(factory->value_string(), |  1316     {  // value | 
|  1323                                JSGeneratorObject::kResultValuePropertyIndex, |  1317       DataDescriptor d(factory->value_string(), JSIteratorResult::kValueIndex, | 
|  1324                                NONE, Representation::Tagged()); |  1318                        NONE, Representation::Tagged()); | 
|  1325     iterator_result_map->AppendDescriptor(&value_descr); |  1319       map->AppendDescriptor(&d); | 
 |  1320     } | 
|  1326  |  1321  | 
|  1327     DataDescriptor done_descr(factory->done_string(), |  1322     {  // done | 
|  1328                               JSGeneratorObject::kResultDonePropertyIndex, NONE, |  1323       DataDescriptor d(factory->done_string(), JSIteratorResult::kDoneIndex, | 
|  1329                               Representation::Tagged()); |  1324                        NONE, Representation::Tagged()); | 
|  1330     iterator_result_map->AppendDescriptor(&done_descr); |  1325       map->AppendDescriptor(&d); | 
 |  1326     } | 
|  1331  |  1327  | 
|  1332     iterator_result_map->set_unused_property_fields(0); |  1328     map->SetInObjectProperties(2); | 
|  1333     DCHECK_EQ(JSGeneratorObject::kResultSize, |  1329     native_context()->set_iterator_result_map(*map); | 
|  1334               iterator_result_map->instance_size()); |  | 
|  1335     native_context()->set_iterator_result_map(*iterator_result_map); |  | 
|  1336   } |  1330   } | 
|  1337  |  1331  | 
|  1338   // -- W e a k M a p |  1332   // -- W e a k M a p | 
|  1339   InstallFunction(global, "WeakMap", JS_WEAK_MAP_TYPE, JSWeakMap::kSize, |  1333   InstallFunction(global, "WeakMap", JS_WEAK_MAP_TYPE, JSWeakMap::kSize, | 
|  1340                   isolate->initial_object_prototype(), Builtins::kIllegal); |  1334                   isolate->initial_object_prototype(), Builtins::kIllegal); | 
|  1341   // -- W e a k S e t |  1335   // -- W e a k S e t | 
|  1342   InstallFunction(global, "WeakSet", JS_WEAK_SET_TYPE, JSWeakSet::kSize, |  1336   InstallFunction(global, "WeakSet", JS_WEAK_SET_TYPE, JSWeakSet::kSize, | 
|  1343                   isolate->initial_object_prototype(), Builtins::kIllegal); |  1337                   isolate->initial_object_prototype(), Builtins::kIllegal); | 
|  1344  |  1338  | 
|  1345   {  // --- sloppy arguments map |  1339   {  // --- sloppy arguments map | 
| (...skipping 1844 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  3190 } |  3184 } | 
|  3191  |  3185  | 
|  3192  |  3186  | 
|  3193 // Called when the top-level V8 mutex is destroyed. |  3187 // Called when the top-level V8 mutex is destroyed. | 
|  3194 void Bootstrapper::FreeThreadResources() { |  3188 void Bootstrapper::FreeThreadResources() { | 
|  3195   DCHECK(!IsActive()); |  3189   DCHECK(!IsActive()); | 
|  3196 } |  3190 } | 
|  3197  |  3191  | 
|  3198 }  // namespace internal |  3192 }  // namespace internal | 
|  3199 }  // namespace v8 |  3193 }  // namespace v8 | 
| OLD | NEW |