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 <sstream> | 8 #include <sstream> |
9 | 9 |
10 #include "src/base/adapters.h" | 10 #include "src/base/adapters.h" |
(...skipping 821 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
832 Schedule* schedule = Scheduler::ComputeSchedule(temp_zone, data->graph(), | 832 Schedule* schedule = Scheduler::ComputeSchedule(temp_zone, data->graph(), |
833 Scheduler::kNoFlags); | 833 Scheduler::kNoFlags); |
834 if (FLAG_turbo_verify) ScheduleVerifier::Run(schedule); | 834 if (FLAG_turbo_verify) ScheduleVerifier::Run(schedule); |
835 TraceSchedule(data->info(), schedule); | 835 TraceSchedule(data->info(), schedule); |
836 | 836 |
837 // Post-pass for wiring the control/effects | 837 // Post-pass for wiring the control/effects |
838 // - connect allocating representation changes into the control&effect | 838 // - connect allocating representation changes into the control&effect |
839 // chains and lower them, | 839 // chains and lower them, |
840 // - get rid of the region markers, | 840 // - get rid of the region markers, |
841 // - introduce effect phis and rewire effects to get SSA again. | 841 // - introduce effect phis and rewire effects to get SSA again. |
842 EffectControlLinearizer introducer(data->jsgraph(), schedule, temp_zone); | 842 EffectControlLinearizer linearizer(data->jsgraph(), schedule, temp_zone); |
843 introducer.Run(); | 843 linearizer.Run(); |
844 } | 844 } |
845 }; | 845 }; |
846 | 846 |
847 struct LateOptimizationPhase { | 847 struct LateOptimizationPhase { |
848 static const char* phase_name() { return "late optimization"; } | 848 static const char* phase_name() { return "late optimization"; } |
849 | 849 |
850 void Run(PipelineData* data, Zone* temp_zone) { | 850 void Run(PipelineData* data, Zone* temp_zone) { |
851 JSGraphReducer graph_reducer(data->jsgraph(), temp_zone); | 851 JSGraphReducer graph_reducer(data->jsgraph(), temp_zone); |
852 DeadCodeElimination dead_code_elimination(&graph_reducer, data->graph(), | 852 DeadCodeElimination dead_code_elimination(&graph_reducer, data->graph(), |
853 data->common()); | 853 data->common()); |
(...skipping 737 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1591 } | 1591 } |
1592 | 1592 |
1593 data->DeleteRegisterAllocationZone(); | 1593 data->DeleteRegisterAllocationZone(); |
1594 } | 1594 } |
1595 | 1595 |
1596 Isolate* Pipeline::isolate() const { return info()->isolate(); } | 1596 Isolate* Pipeline::isolate() const { return info()->isolate(); } |
1597 | 1597 |
1598 } // namespace compiler | 1598 } // namespace compiler |
1599 } // namespace internal | 1599 } // namespace internal |
1600 } // namespace v8 | 1600 } // namespace v8 |
OLD | NEW |