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 818 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
829 data->jsgraph()->GetCachedNodes(&roots); | 829 data->jsgraph()->GetCachedNodes(&roots); |
830 trimmer.TrimGraph(roots.begin(), roots.end()); | 830 trimmer.TrimGraph(roots.begin(), roots.end()); |
831 | 831 |
832 // Schedule the graph without node splitting so that we can | 832 // Schedule the graph without node splitting so that we can |
833 // fix the effect and control flow for nodes with low-level side | 833 // fix the effect and control flow for nodes with low-level side |
834 // effects (such as changing representation to tagged or | 834 // effects (such as changing representation to tagged or |
835 // 'floating' allocation regions.) | 835 // 'floating' allocation regions.) |
836 Schedule* schedule = Scheduler::ComputeSchedule(temp_zone, data->graph(), | 836 Schedule* schedule = Scheduler::ComputeSchedule(temp_zone, data->graph(), |
837 Scheduler::kNoFlags); | 837 Scheduler::kNoFlags); |
838 if (FLAG_turbo_verify) ScheduleVerifier::Run(schedule); | 838 if (FLAG_turbo_verify) ScheduleVerifier::Run(schedule); |
| 839 TraceSchedule(data->info(), schedule); |
839 | 840 |
840 // Post-pass for wiring the control/effects | 841 // Post-pass for wiring the control/effects |
841 // - connect allocating representation changes into the control&effect | 842 // - connect allocating representation changes into the control&effect |
842 // chains and lower them, | 843 // chains and lower them, |
843 // - get rid of the region markers, | 844 // - get rid of the region markers, |
844 // - introduce effect phis and rewire effects to get SSA again. | 845 // - introduce effect phis and rewire effects to get SSA again. |
845 EffectControlLinearizer introducer(data->jsgraph(), schedule, temp_zone); | 846 EffectControlLinearizer introducer(data->jsgraph(), schedule, temp_zone); |
846 introducer.Run(); | 847 introducer.Run(); |
847 } | 848 } |
848 }; | 849 }; |
(...skipping 747 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1596 } | 1597 } |
1597 | 1598 |
1598 data->DeleteRegisterAllocationZone(); | 1599 data->DeleteRegisterAllocationZone(); |
1599 } | 1600 } |
1600 | 1601 |
1601 Isolate* Pipeline::isolate() const { return info()->isolate(); } | 1602 Isolate* Pipeline::isolate() const { return info()->isolate(); } |
1602 | 1603 |
1603 } // namespace compiler | 1604 } // namespace compiler |
1604 } // namespace internal | 1605 } // namespace internal |
1605 } // namespace v8 | 1606 } // namespace v8 |
OLD | NEW |