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

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

Issue 2970443003: Print missing builtin names when using a snapshot. (Closed)
Patch Set: Created 3 years, 5 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/objects.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 the V8 project authors. All rights reserved. 1 // Copyright 2016 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/snapshot/deserializer.h" 5 #include "src/snapshot/deserializer.h"
6 6
7 #include "src/api.h" 7 #include "src/api.h"
8 #include "src/assembler-inl.h" 8 #include "src/assembler-inl.h"
9 #include "src/bootstrapper.h" 9 #include "src/bootstrapper.h"
10 #include "src/deoptimizer.h" 10 #include "src/deoptimizer.h"
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
109 109
110 isolate_->heap()->set_native_contexts_list( 110 isolate_->heap()->set_native_contexts_list(
111 isolate_->heap()->undefined_value()); 111 isolate_->heap()->undefined_value());
112 // The allocation site list is build during root iteration, but if no sites 112 // The allocation site list is build during root iteration, but if no sites
113 // were encountered then it needs to be initialized to undefined. 113 // were encountered then it needs to be initialized to undefined.
114 if (isolate_->heap()->allocation_sites_list() == Smi::kZero) { 114 if (isolate_->heap()->allocation_sites_list() == Smi::kZero) {
115 isolate_->heap()->set_allocation_sites_list( 115 isolate_->heap()->set_allocation_sites_list(
116 isolate_->heap()->undefined_value()); 116 isolate_->heap()->undefined_value());
117 } 117 }
118 118
119 // If needed, print the dissassembly of deserialized code objects.
120 PrintDisassembledCodeObjects();
121
122 // Issue code events for newly deserialized code objects. 119 // Issue code events for newly deserialized code objects.
123 LOG_CODE_EVENT(isolate_, LogCodeObjects()); 120 LOG_CODE_EVENT(isolate_, LogCodeObjects());
124 LOG_CODE_EVENT(isolate_, LogBytecodeHandlers()); 121 LOG_CODE_EVENT(isolate_, LogBytecodeHandlers());
125 LOG_CODE_EVENT(isolate_, LogCompiledFunctions()); 122 LOG_CODE_EVENT(isolate_, LogCompiledFunctions());
126 123
127 isolate_->builtins()->MarkInitialized(); 124 isolate_->builtins()->MarkInitialized();
125
126 // If needed, print the dissassembly of deserialized code objects.
127 // Needs to be called after the builtins are marked as initialized, in order
128 // to display the builtin names.
129 PrintDisassembledCodeObjects();
128 } 130 }
129 131
130 MaybeHandle<Object> Deserializer::DeserializePartial( 132 MaybeHandle<Object> Deserializer::DeserializePartial(
131 Isolate* isolate, Handle<JSGlobalProxy> global_proxy, 133 Isolate* isolate, Handle<JSGlobalProxy> global_proxy,
132 v8::DeserializeEmbedderFieldsCallback embedder_fields_deserializer) { 134 v8::DeserializeEmbedderFieldsCallback embedder_fields_deserializer) {
133 Initialize(isolate); 135 Initialize(isolate);
134 if (!ReserveSpace()) { 136 if (!ReserveSpace()) {
135 V8::FatalProcessOutOfMemory("deserialize context"); 137 V8::FatalProcessOutOfMemory("deserialize context");
136 return MaybeHandle<Object>(); 138 return MaybeHandle<Object>();
137 } 139 }
(...skipping 772 matching lines...) Expand 10 before | Expand all | Expand 10 after
910 912
911 default: 913 default:
912 CHECK(false); 914 CHECK(false);
913 } 915 }
914 } 916 }
915 CHECK_EQ(limit, current); 917 CHECK_EQ(limit, current);
916 return true; 918 return true;
917 } 919 }
918 } // namespace internal 920 } // namespace internal
919 } // namespace v8 921 } // namespace v8
OLDNEW
« no previous file with comments | « src/objects.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698