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 1649 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1660 data_->set_source_position_output(source_position_output.str()); | 1660 data_->set_source_position_output(source_position_output.str()); |
1661 } | 1661 } |
1662 | 1662 |
1663 data->DeleteGraphZone(); | 1663 data->DeleteGraphZone(); |
1664 | 1664 |
1665 data->BeginPhaseKind("register allocation"); | 1665 data->BeginPhaseKind("register allocation"); |
1666 | 1666 |
1667 bool run_verifier = FLAG_turbo_verify_allocation; | 1667 bool run_verifier = FLAG_turbo_verify_allocation; |
1668 | 1668 |
1669 // Allocate registers. | 1669 // Allocate registers. |
1670 AllocateRegisters( | 1670 AllocateRegisters(RegisterConfiguration::Turbofan(), call_descriptor, |
1671 RegisterConfiguration::ArchDefault(RegisterConfiguration::TURBOFAN), | 1671 run_verifier); |
1672 call_descriptor, run_verifier); | |
1673 Run<FrameElisionPhase>(); | 1672 Run<FrameElisionPhase>(); |
1674 if (data->compilation_failed()) { | 1673 if (data->compilation_failed()) { |
1675 info()->AbortOptimization(kNotEnoughVirtualRegistersRegalloc); | 1674 info()->AbortOptimization(kNotEnoughVirtualRegistersRegalloc); |
1676 data->EndPhaseKind(); | 1675 data->EndPhaseKind(); |
1677 return false; | 1676 return false; |
1678 } | 1677 } |
1679 | 1678 |
1680 // TODO(mtrofin): move this off to the register allocator. | 1679 // TODO(mtrofin): move this off to the register allocator. |
1681 bool generate_frame_at_start = | 1680 bool generate_frame_at_start = |
1682 data_->sequence()->instruction_blocks().front()->must_construct_frame(); | 1681 data_->sequence()->instruction_blocks().front()->must_construct_frame(); |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1830 data->DeleteRegisterAllocationZone(); | 1829 data->DeleteRegisterAllocationZone(); |
1831 } | 1830 } |
1832 | 1831 |
1833 CompilationInfo* PipelineImpl::info() const { return data_->info(); } | 1832 CompilationInfo* PipelineImpl::info() const { return data_->info(); } |
1834 | 1833 |
1835 Isolate* PipelineImpl::isolate() const { return info()->isolate(); } | 1834 Isolate* PipelineImpl::isolate() const { return info()->isolate(); } |
1836 | 1835 |
1837 } // namespace compiler | 1836 } // namespace compiler |
1838 } // namespace internal | 1837 } // namespace internal |
1839 } // namespace v8 | 1838 } // namespace v8 |
OLD | NEW |