| 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 1551 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1562 } else { | 1562 } else { |
| 1563 Run<LoopExitEliminationPhase>(); | 1563 Run<LoopExitEliminationPhase>(); |
| 1564 RunPrintAndVerify("Loop exits eliminated", true); | 1564 RunPrintAndVerify("Loop exits eliminated", true); |
| 1565 } | 1565 } |
| 1566 | 1566 |
| 1567 if (FLAG_turbo_stress_loop_peeling) { | 1567 if (FLAG_turbo_stress_loop_peeling) { |
| 1568 Run<StressLoopPeelingPhase>(); | 1568 Run<StressLoopPeelingPhase>(); |
| 1569 RunPrintAndVerify("Loop peeled"); | 1569 RunPrintAndVerify("Loop peeled"); |
| 1570 } | 1570 } |
| 1571 | 1571 |
| 1572 if (FLAG_turbo_escape) { | 1572 if (!info()->shared_info()->asm_function()) { |
| 1573 Run<EscapeAnalysisPhase>(); | 1573 if (FLAG_turbo_load_elimination) { |
| 1574 RunPrintAndVerify("Escape Analysed"); | 1574 Run<LoadEliminationPhase>(); |
| 1575 } | 1575 RunPrintAndVerify("Load eliminated"); |
| 1576 } |
| 1576 | 1577 |
| 1577 if (!info()->shared_info()->asm_function() && FLAG_turbo_load_elimination) { | 1578 if (FLAG_turbo_escape) { |
| 1578 Run<LoadEliminationPhase>(); | 1579 Run<EscapeAnalysisPhase>(); |
| 1579 RunPrintAndVerify("Load eliminated"); | 1580 RunPrintAndVerify("Escape Analysed"); |
| 1581 } |
| 1580 } | 1582 } |
| 1581 } | 1583 } |
| 1582 | 1584 |
| 1583 // Select representations. This has to run w/o the Typer decorator, because | 1585 // Select representations. This has to run w/o the Typer decorator, because |
| 1584 // we cannot compute meaningful types anyways, and the computed types might | 1586 // we cannot compute meaningful types anyways, and the computed types might |
| 1585 // even conflict with the representation/truncation logic. | 1587 // even conflict with the representation/truncation logic. |
| 1586 Run<RepresentationSelectionPhase>(); | 1588 Run<RepresentationSelectionPhase>(); |
| 1587 RunPrintAndVerify("Representations selected", true); | 1589 RunPrintAndVerify("Representations selected", true); |
| 1588 | 1590 |
| 1589 #ifdef DEBUG | 1591 #ifdef DEBUG |
| (...skipping 398 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1988 data->DeleteRegisterAllocationZone(); | 1990 data->DeleteRegisterAllocationZone(); |
| 1989 } | 1991 } |
| 1990 | 1992 |
| 1991 CompilationInfo* PipelineImpl::info() const { return data_->info(); } | 1993 CompilationInfo* PipelineImpl::info() const { return data_->info(); } |
| 1992 | 1994 |
| 1993 Isolate* PipelineImpl::isolate() const { return info()->isolate(); } | 1995 Isolate* PipelineImpl::isolate() const { return info()->isolate(); } |
| 1994 | 1996 |
| 1995 } // namespace compiler | 1997 } // namespace compiler |
| 1996 } // namespace internal | 1998 } // namespace internal |
| 1997 } // namespace v8 | 1999 } // namespace v8 |
| OLD | NEW |