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

Side by Side Diff: src/compiler/pipeline.cc

Issue 2792553002: [turbofan] Specialize to closure with function context specialization. (Closed)
Patch Set: Created 3 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
OLDNEW
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 781 matching lines...) Expand 10 before | Expand all | Expand 10 after
792 CheckpointElimination checkpoint_elimination(&graph_reducer); 792 CheckpointElimination checkpoint_elimination(&graph_reducer);
793 CommonOperatorReducer common_reducer(&graph_reducer, data->graph(), 793 CommonOperatorReducer common_reducer(&graph_reducer, data->graph(),
794 data->common(), data->machine()); 794 data->common(), data->machine());
795 JSCallReducer call_reducer(&graph_reducer, data->jsgraph(), 795 JSCallReducer call_reducer(&graph_reducer, data->jsgraph(),
796 data->native_context(), 796 data->native_context(),
797 data->info()->dependencies()); 797 data->info()->dependencies());
798 JSContextSpecialization context_specialization( 798 JSContextSpecialization context_specialization(
799 &graph_reducer, data->jsgraph(), 799 &graph_reducer, data->jsgraph(),
800 data->info()->is_function_context_specializing() 800 data->info()->is_function_context_specializing()
801 ? handle(data->info()->context()) 801 ? handle(data->info()->context())
802 : MaybeHandle<Context>()); 802 : MaybeHandle<Context>(),
803 data->info()->is_function_context_specializing()
804 ? data->info()->closure()
805 : MaybeHandle<JSFunction>());
803 JSFrameSpecialization frame_specialization( 806 JSFrameSpecialization frame_specialization(
804 &graph_reducer, data->info()->osr_frame(), data->jsgraph()); 807 &graph_reducer, data->info()->osr_frame(), data->jsgraph());
805 JSNativeContextSpecialization::Flags flags = 808 JSNativeContextSpecialization::Flags flags =
806 JSNativeContextSpecialization::kNoFlags; 809 JSNativeContextSpecialization::kNoFlags;
807 if (data->info()->is_accessor_inlining_enabled()) { 810 if (data->info()->is_accessor_inlining_enabled()) {
808 flags |= JSNativeContextSpecialization::kAccessorInliningEnabled; 811 flags |= JSNativeContextSpecialization::kAccessorInliningEnabled;
809 } 812 }
810 if (data->info()->is_bailout_on_uninitialized()) { 813 if (data->info()->is_bailout_on_uninitialized()) {
811 flags |= JSNativeContextSpecialization::kBailoutOnUninitialized; 814 flags |= JSNativeContextSpecialization::kBailoutOnUninitialized;
812 } 815 }
(...skipping 1209 matching lines...) Expand 10 before | Expand all | Expand 10 after
2022 data->DeleteRegisterAllocationZone(); 2025 data->DeleteRegisterAllocationZone();
2023 } 2026 }
2024 2027
2025 CompilationInfo* PipelineImpl::info() const { return data_->info(); } 2028 CompilationInfo* PipelineImpl::info() const { return data_->info(); }
2026 2029
2027 Isolate* PipelineImpl::isolate() const { return info()->isolate(); } 2030 Isolate* PipelineImpl::isolate() const { return info()->isolate(); }
2028 2031
2029 } // namespace compiler 2032 } // namespace compiler
2030 } // namespace internal 2033 } // namespace internal
2031 } // namespace v8 2034 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/js-context-specialization.cc ('k') | test/cctest/compiler/test-js-context-specialization.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698