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

Side by Side Diff: src/snapshot/serialize.cc

Issue 1107843002: Reland "Remove the weak list of views from array buffers" (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: use bounds check Created 5 years, 8 months 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
« no previous file with comments | « src/runtime/runtime-typedarray.cc ('k') | test/cctest/test-api.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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/v8.h" 5 #include "src/v8.h"
6 6
7 #include "src/accessors.h" 7 #include "src/accessors.h"
8 #include "src/api.h" 8 #include "src/api.h"
9 #include "src/base/platform/platform.h" 9 #include "src/base/platform/platform.h"
10 #include "src/bootstrapper.h" 10 #include "src/bootstrapper.h"
(...skipping 549 matching lines...) Expand 10 before | Expand all | Expand 10 after
560 isolate_->heap()->IterateStrongRoots(this, VISIT_ONLY_STRONG); 560 isolate_->heap()->IterateStrongRoots(this, VISIT_ONLY_STRONG);
561 isolate_->heap()->RepairFreeListsAfterDeserialization(); 561 isolate_->heap()->RepairFreeListsAfterDeserialization();
562 isolate_->heap()->IterateWeakRoots(this, VISIT_ALL); 562 isolate_->heap()->IterateWeakRoots(this, VISIT_ALL);
563 563
564 isolate_->heap()->set_native_contexts_list( 564 isolate_->heap()->set_native_contexts_list(
565 isolate_->heap()->undefined_value()); 565 isolate_->heap()->undefined_value());
566 isolate_->heap()->set_array_buffers_list( 566 isolate_->heap()->set_array_buffers_list(
567 isolate_->heap()->undefined_value()); 567 isolate_->heap()->undefined_value());
568 isolate_->heap()->set_last_array_buffer_in_list( 568 isolate_->heap()->set_last_array_buffer_in_list(
569 isolate_->heap()->undefined_value()); 569 isolate_->heap()->undefined_value());
570 isolate->heap()->set_new_array_buffer_views_list(
571 isolate_->heap()->undefined_value());
572 570
573 // The allocation site list is build during root iteration, but if no sites 571 // The allocation site list is build during root iteration, but if no sites
574 // were encountered then it needs to be initialized to undefined. 572 // were encountered then it needs to be initialized to undefined.
575 if (isolate_->heap()->allocation_sites_list() == Smi::FromInt(0)) { 573 if (isolate_->heap()->allocation_sites_list() == Smi::FromInt(0)) {
576 isolate_->heap()->set_allocation_sites_list( 574 isolate_->heap()->set_allocation_sites_list(
577 isolate_->heap()->undefined_value()); 575 isolate_->heap()->undefined_value());
578 } 576 }
579 577
580 // Update data pointers to the external strings containing natives sources. 578 // Update data pointers to the external strings containing natives sources.
581 for (int i = 0; i < Natives::GetBuiltinsCount(); i++) { 579 for (int i = 0; i < Natives::GetBuiltinsCount(); i++) {
(...skipping 2016 matching lines...) Expand 10 before | Expand all | Expand 10 after
2598 DisallowHeapAllocation no_gc; 2596 DisallowHeapAllocation no_gc;
2599 SerializedCodeData* scd = new SerializedCodeData(cached_data); 2597 SerializedCodeData* scd = new SerializedCodeData(cached_data);
2600 SanityCheckResult r = scd->SanityCheck(isolate, source); 2598 SanityCheckResult r = scd->SanityCheck(isolate, source);
2601 if (r == CHECK_SUCCESS) return scd; 2599 if (r == CHECK_SUCCESS) return scd;
2602 cached_data->Reject(); 2600 cached_data->Reject();
2603 source->GetIsolate()->counters()->code_cache_reject_reason()->AddSample(r); 2601 source->GetIsolate()->counters()->code_cache_reject_reason()->AddSample(r);
2604 delete scd; 2602 delete scd;
2605 return NULL; 2603 return NULL;
2606 } 2604 }
2607 } } // namespace v8::internal 2605 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/runtime/runtime-typedarray.cc ('k') | test/cctest/test-api.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698