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 685 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
696 data->common(), data->machine()); | 696 data->common(), data->machine()); |
697 JSGenericLowering generic_lowering(data->info()->is_typing_enabled(), | 697 JSGenericLowering generic_lowering(data->info()->is_typing_enabled(), |
698 data->jsgraph()); | 698 data->jsgraph()); |
699 SelectLowering select_lowering(data->jsgraph()->graph(), | 699 SelectLowering select_lowering(data->jsgraph()->graph(), |
700 data->jsgraph()->common()); | 700 data->jsgraph()->common()); |
701 TailCallOptimization tco(data->common(), data->graph()); | 701 TailCallOptimization tco(data->common(), data->graph()); |
702 AddReducer(data, &graph_reducer, &dead_code_elimination); | 702 AddReducer(data, &graph_reducer, &dead_code_elimination); |
703 AddReducer(data, &graph_reducer, &common_reducer); | 703 AddReducer(data, &graph_reducer, &common_reducer); |
704 AddReducer(data, &graph_reducer, &generic_lowering); | 704 AddReducer(data, &graph_reducer, &generic_lowering); |
705 AddReducer(data, &graph_reducer, &select_lowering); | 705 AddReducer(data, &graph_reducer, &select_lowering); |
706 // TODO(turbofan): TCO is currently limited to stubs. | 706 AddReducer(data, &graph_reducer, &tco); |
707 if (data->info()->IsStub()) AddReducer(data, &graph_reducer, &tco); | |
708 graph_reducer.ReduceGraph(); | 707 graph_reducer.ReduceGraph(); |
709 } | 708 } |
710 }; | 709 }; |
711 | 710 |
712 | 711 |
713 struct ComputeSchedulePhase { | 712 struct ComputeSchedulePhase { |
714 static const char* phase_name() { return "scheduling"; } | 713 static const char* phase_name() { return "scheduling"; } |
715 | 714 |
716 void Run(PipelineData* data, Zone* temp_zone) { | 715 void Run(PipelineData* data, Zone* temp_zone) { |
717 Schedule* schedule = Scheduler::ComputeSchedule( | 716 Schedule* schedule = Scheduler::ComputeSchedule( |
(...skipping 638 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1356 tcf << AsC1VRegisterAllocationData("CodeGen", | 1355 tcf << AsC1VRegisterAllocationData("CodeGen", |
1357 data->register_allocation_data()); | 1356 data->register_allocation_data()); |
1358 } | 1357 } |
1359 | 1358 |
1360 data->DeleteRegisterAllocationZone(); | 1359 data->DeleteRegisterAllocationZone(); |
1361 } | 1360 } |
1362 | 1361 |
1363 } // namespace compiler | 1362 } // namespace compiler |
1364 } // namespace internal | 1363 } // namespace internal |
1365 } // namespace v8 | 1364 } // namespace v8 |
OLD | NEW |