| 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 634 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 645 AddReducer(data, &graph_reducer, &dead_code_elimination); | 645 AddReducer(data, &graph_reducer, &dead_code_elimination); |
| 646 graph_reducer.ReduceGraph(); | 646 graph_reducer.ReduceGraph(); |
| 647 } | 647 } |
| 648 }; | 648 }; |
| 649 | 649 |
| 650 | 650 |
| 651 struct EscapeAnalysisPhase { | 651 struct EscapeAnalysisPhase { |
| 652 static const char* phase_name() { return "escape analysis"; } | 652 static const char* phase_name() { return "escape analysis"; } |
| 653 | 653 |
| 654 void Run(PipelineData* data, Zone* temp_zone) { | 654 void Run(PipelineData* data, Zone* temp_zone) { |
| 655 EscapeObjectAnalysis escape_analysis(data->graph(), | 655 EscapeAnalysis escape_analysis(data->graph(), data->jsgraph()->common(), |
| 656 data->jsgraph()->common(), temp_zone); | 656 temp_zone); |
| 657 escape_analysis.Run(); | 657 escape_analysis.Run(); |
| 658 EscapeStatusAnalysis escape_status(&escape_analysis, data->graph(), | |
| 659 temp_zone); | |
| 660 escape_status.Run(); | |
| 661 JSGraphReducer graph_reducer(data->jsgraph(), temp_zone); | 658 JSGraphReducer graph_reducer(data->jsgraph(), temp_zone); |
| 662 EscapeAnalysisReducer escape_reducer(&graph_reducer, data->jsgraph(), | 659 EscapeAnalysisReducer escape_reducer(&graph_reducer, data->jsgraph(), |
| 663 &escape_status, &escape_analysis, | 660 &escape_analysis, temp_zone); |
| 664 temp_zone); | |
| 665 AddReducer(data, &graph_reducer, &escape_reducer); | 661 AddReducer(data, &graph_reducer, &escape_reducer); |
| 666 graph_reducer.ReduceGraph(); | 662 graph_reducer.ReduceGraph(); |
| 667 } | 663 } |
| 668 }; | 664 }; |
| 669 | 665 |
| 670 | 666 |
| 671 struct SimplifiedLoweringPhase { | 667 struct SimplifiedLoweringPhase { |
| 672 static const char* phase_name() { return "simplified lowering"; } | 668 static const char* phase_name() { return "simplified lowering"; } |
| 673 | 669 |
| 674 void Run(PipelineData* data, Zone* temp_zone) { | 670 void Run(PipelineData* data, Zone* temp_zone) { |
| (...skipping 803 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1478 tcf << AsC1VRegisterAllocationData("CodeGen", | 1474 tcf << AsC1VRegisterAllocationData("CodeGen", |
| 1479 data->register_allocation_data()); | 1475 data->register_allocation_data()); |
| 1480 } | 1476 } |
| 1481 | 1477 |
| 1482 data->DeleteRegisterAllocationZone(); | 1478 data->DeleteRegisterAllocationZone(); |
| 1483 } | 1479 } |
| 1484 | 1480 |
| 1485 } // namespace compiler | 1481 } // namespace compiler |
| 1486 } // namespace internal | 1482 } // namespace internal |
| 1487 } // namespace v8 | 1483 } // namespace v8 |
| OLD | NEW |