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

Side by Side Diff: runtime/vm/clustered_snapshot.cc

Issue 2598623002: Cache hash code for closures. (Closed)
Patch Set: remove redundant assertion Created 3 years, 12 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 | « runtime/lib/function.cc ('k') | runtime/vm/object.h » ('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 (c) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "vm/clustered_snapshot.h" 5 #include "vm/clustered_snapshot.h"
6 6
7 #include "platform/assert.h" 7 #include "platform/assert.h"
8 #include "vm/bootstrap.h" 8 #include "vm/bootstrap.h"
9 #include "vm/class_finalizer.h" 9 #include "vm/class_finalizer.h"
10 #include "vm/dart.h" 10 #include "vm/dart.h"
(...skipping 754 matching lines...) Expand 10 before | Expand all | Expand 10 after
765 ClosureData::InstanceSize(), is_vm_object); 765 ClosureData::InstanceSize(), is_vm_object);
766 if (d->kind() == Snapshot::kAppAOT) { 766 if (d->kind() == Snapshot::kAppAOT) {
767 data->ptr()->context_scope_ = ContextScope::null(); 767 data->ptr()->context_scope_ = ContextScope::null();
768 } else { 768 } else {
769 data->ptr()->context_scope_ = 769 data->ptr()->context_scope_ =
770 static_cast<RawContextScope*>(d->ReadRef()); 770 static_cast<RawContextScope*>(d->ReadRef());
771 } 771 }
772 data->ptr()->parent_function_ = static_cast<RawFunction*>(d->ReadRef()); 772 data->ptr()->parent_function_ = static_cast<RawFunction*>(d->ReadRef());
773 data->ptr()->signature_type_ = static_cast<RawType*>(d->ReadRef()); 773 data->ptr()->signature_type_ = static_cast<RawType*>(d->ReadRef());
774 data->ptr()->closure_ = static_cast<RawInstance*>(d->ReadRef()); 774 data->ptr()->closure_ = static_cast<RawInstance*>(d->ReadRef());
775 data->ptr()->hash_ = Object::null();
775 } 776 }
776 } 777 }
777 }; 778 };
778 779
779 780
780 #if !defined(DART_PRECOMPILED_RUNTIME) 781 #if !defined(DART_PRECOMPILED_RUNTIME)
781 class SignatureDataSerializationCluster : public SerializationCluster { 782 class SignatureDataSerializationCluster : public SerializationCluster {
782 public: 783 public:
783 SignatureDataSerializationCluster() {} 784 SignatureDataSerializationCluster() {}
784 virtual ~SignatureDataSerializationCluster() {} 785 virtual ~SignatureDataSerializationCluster() {}
(...skipping 4680 matching lines...) Expand 10 before | Expand all | Expand 10 after
5465 5466
5466 deserializer.ReadVMSnapshot(); 5467 deserializer.ReadVMSnapshot();
5467 5468
5468 Dart::set_instructions_snapshot_buffer(instructions_buffer_); 5469 Dart::set_instructions_snapshot_buffer(instructions_buffer_);
5469 Dart::set_data_snapshot_buffer(data_buffer_); 5470 Dart::set_data_snapshot_buffer(data_buffer_);
5470 5471
5471 return ApiError::null(); 5472 return ApiError::null();
5472 } 5473 }
5473 5474
5474 } // namespace dart 5475 } // namespace dart
OLDNEW
« no previous file with comments | « runtime/lib/function.cc ('k') | runtime/vm/object.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698