| 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/background-parsing-task.h" | 5 #include "src/background-parsing-task.h" | 
| 6 | 6 | 
| 7 #include "src/debug/debug.h" | 7 #include "src/debug/debug.h" | 
| 8 #include "src/parsing/parser.h" | 8 #include "src/parsing/parser.h" | 
| 9 | 9 | 
| 10 namespace v8 { | 10 namespace v8 { | 
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 43   // Parse eagerly with ignition since we will compile eagerly. | 43   // Parse eagerly with ignition since we will compile eagerly. | 
| 44   info->set_allow_lazy_parsing(!(i::FLAG_ignition && i::FLAG_ignition_eager)); | 44   info->set_allow_lazy_parsing(!(i::FLAG_ignition && i::FLAG_ignition_eager)); | 
| 45 | 45 | 
| 46   if (options == ScriptCompiler::kProduceParserCache || | 46   if (options == ScriptCompiler::kProduceParserCache || | 
| 47       options == ScriptCompiler::kProduceCodeCache) { | 47       options == ScriptCompiler::kProduceCodeCache) { | 
| 48     source_->info->set_cached_data(&script_data_); | 48     source_->info->set_cached_data(&script_data_); | 
| 49   } | 49   } | 
| 50   // Parser needs to stay alive for finalizing the parsing on the main | 50   // Parser needs to stay alive for finalizing the parsing on the main | 
| 51   // thread. | 51   // thread. | 
| 52   source_->parser.reset(new Parser(source_->info.get())); | 52   source_->parser.reset(new Parser(source_->info.get())); | 
| 53   source_->parser->DeserializeScopeChain( | 53   source_->parser->InspectScopeChain(source_->info.get(), | 
| 54       source_->info.get(), Handle<Context>::null(), | 54                                      MaybeHandle<ScopeInfo>()); | 
| 55       Scope::DeserializationMode::kDeserializeOffHeap); |  | 
| 56 } | 55 } | 
| 57 | 56 | 
| 58 | 57 | 
| 59 void BackgroundParsingTask::Run() { | 58 void BackgroundParsingTask::Run() { | 
| 60   DisallowHeapAllocation no_allocation; | 59   DisallowHeapAllocation no_allocation; | 
| 61   DisallowHandleAllocation no_handles; | 60   DisallowHandleAllocation no_handles; | 
| 62   DisallowHandleDereference no_deref; | 61   DisallowHandleDereference no_deref; | 
| 63 | 62 | 
| 64   // Reset the stack limit of the parser to reflect correctly that we're on a | 63   // Reset the stack limit of the parser to reflect correctly that we're on a | 
| 65   // background thread. | 64   // background thread. | 
| (...skipping 13 matching lines...) Expand all  Loading... | 
| 79         script_data_->data(), script_data_->length(), | 78         script_data_->data(), script_data_->length(), | 
| 80         ScriptCompiler::CachedData::BufferOwned)); | 79         ScriptCompiler::CachedData::BufferOwned)); | 
| 81     script_data_->ReleaseDataOwnership(); | 80     script_data_->ReleaseDataOwnership(); | 
| 82     delete script_data_; | 81     delete script_data_; | 
| 83     script_data_ = nullptr; | 82     script_data_ = nullptr; | 
| 84   } | 83   } | 
| 85   source_->info->set_isolate(isolate); | 84   source_->info->set_isolate(isolate); | 
| 86 } | 85 } | 
| 87 }  // namespace internal | 86 }  // namespace internal | 
| 88 }  // namespace v8 | 87 }  // namespace v8 | 
| OLD | NEW | 
|---|