| 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/compiler/pipeline.h" | 5 #include "src/compiler/pipeline.h" | 
| 6 | 6 | 
| 7 #include <fstream>  // NOLINT(readability/streams) | 7 #include <fstream>  // NOLINT(readability/streams) | 
| 8 #include <memory> | 8 #include <memory> | 
| 9 #include <sstream> | 9 #include <sstream> | 
| 10 | 10 | 
| (...skipping 588 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 599       info()->MarkAsBailoutOnUninitialized(); | 599       info()->MarkAsBailoutOnUninitialized(); | 
| 600     } | 600     } | 
| 601     if (FLAG_native_context_specialization) { | 601     if (FLAG_native_context_specialization) { | 
| 602       info()->MarkAsNativeContextSpecializing(); | 602       info()->MarkAsNativeContextSpecializing(); | 
| 603     } | 603     } | 
| 604   } | 604   } | 
| 605   if (!info()->shared_info()->asm_function() || FLAG_turbo_asm_deoptimization) { | 605   if (!info()->shared_info()->asm_function() || FLAG_turbo_asm_deoptimization) { | 
| 606     info()->MarkAsDeoptimizationEnabled(); | 606     info()->MarkAsDeoptimizationEnabled(); | 
| 607   } | 607   } | 
| 608   if (!info()->is_optimizing_from_bytecode()) { | 608   if (!info()->is_optimizing_from_bytecode()) { | 
|  | 609     if (FLAG_inline_accessors) { | 
|  | 610       info()->MarkAsAccessorInliningEnabled(); | 
|  | 611     } | 
| 609     if (info()->is_deoptimization_enabled() && FLAG_turbo_type_feedback) { | 612     if (info()->is_deoptimization_enabled() && FLAG_turbo_type_feedback) { | 
| 610       info()->MarkAsTypeFeedbackEnabled(); | 613       info()->MarkAsTypeFeedbackEnabled(); | 
| 611     } | 614     } | 
| 612     if (!Compiler::EnsureDeoptimizationSupport(info())) return FAILED; | 615     if (!Compiler::EnsureDeoptimizationSupport(info())) return FAILED; | 
| 613   } | 616   } | 
| 614 | 617 | 
| 615   // TODO(mstarzinger): Hack to ensure that the ToNumber call descriptor is | 618   // TODO(mstarzinger): Hack to ensure that the ToNumber call descriptor is | 
| 616   // initialized on the main thread, since it is needed off-thread by the | 619   // initialized on the main thread, since it is needed off-thread by the | 
| 617   // effect control linearizer. | 620   // effect control linearizer. | 
| 618   CodeFactory::ToNumber(info()->isolate()); | 621   CodeFactory::ToNumber(info()->isolate()); | 
| (...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 789         data->info()->is_function_context_specializing() | 792         data->info()->is_function_context_specializing() | 
| 790             ? data->info()->context() | 793             ? data->info()->context() | 
| 791             : MaybeHandle<Context>()); | 794             : MaybeHandle<Context>()); | 
| 792     JSFrameSpecialization frame_specialization(data->info()->osr_frame(), | 795     JSFrameSpecialization frame_specialization(data->info()->osr_frame(), | 
| 793                                                data->jsgraph()); | 796                                                data->jsgraph()); | 
| 794     JSGlobalObjectSpecialization global_object_specialization( | 797     JSGlobalObjectSpecialization global_object_specialization( | 
| 795         &graph_reducer, data->jsgraph(), data->native_context(), | 798         &graph_reducer, data->jsgraph(), data->native_context(), | 
| 796         data->info()->dependencies()); | 799         data->info()->dependencies()); | 
| 797     JSNativeContextSpecialization::Flags flags = | 800     JSNativeContextSpecialization::Flags flags = | 
| 798         JSNativeContextSpecialization::kNoFlags; | 801         JSNativeContextSpecialization::kNoFlags; | 
|  | 802     if (data->info()->is_accessor_inlining_enabled()) { | 
|  | 803       flags |= JSNativeContextSpecialization::kAccessorInliningEnabled; | 
|  | 804     } | 
| 799     if (data->info()->is_bailout_on_uninitialized()) { | 805     if (data->info()->is_bailout_on_uninitialized()) { | 
| 800       flags |= JSNativeContextSpecialization::kBailoutOnUninitialized; | 806       flags |= JSNativeContextSpecialization::kBailoutOnUninitialized; | 
| 801     } | 807     } | 
| 802     if (data->info()->is_deoptimization_enabled()) { | 808     if (data->info()->is_deoptimization_enabled()) { | 
| 803       flags |= JSNativeContextSpecialization::kDeoptimizationEnabled; | 809       flags |= JSNativeContextSpecialization::kDeoptimizationEnabled; | 
| 804     } | 810     } | 
| 805     JSNativeContextSpecialization native_context_specialization( | 811     JSNativeContextSpecialization native_context_specialization( | 
| 806         &graph_reducer, data->jsgraph(), flags, data->native_context(), | 812         &graph_reducer, data->jsgraph(), flags, data->native_context(), | 
| 807         data->info()->dependencies(), temp_zone); | 813         data->info()->dependencies(), temp_zone); | 
| 808     JSInliningHeuristic inlining(&graph_reducer, | 814     JSInliningHeuristic inlining(&graph_reducer, | 
| (...skipping 1081 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1890   data->DeleteRegisterAllocationZone(); | 1896   data->DeleteRegisterAllocationZone(); | 
| 1891 } | 1897 } | 
| 1892 | 1898 | 
| 1893 CompilationInfo* PipelineImpl::info() const { return data_->info(); } | 1899 CompilationInfo* PipelineImpl::info() const { return data_->info(); } | 
| 1894 | 1900 | 
| 1895 Isolate* PipelineImpl::isolate() const { return info()->isolate(); } | 1901 Isolate* PipelineImpl::isolate() const { return info()->isolate(); } | 
| 1896 | 1902 | 
| 1897 }  // namespace compiler | 1903 }  // namespace compiler | 
| 1898 }  // namespace internal | 1904 }  // namespace internal | 
| 1899 }  // namespace v8 | 1905 }  // namespace v8 | 
| OLD | NEW | 
|---|