Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(505)

Side by Side Diff: src/compiler/pipeline.cc

Issue 899433005: [turbofan] Split pure nodes in the scheduler if beneficial. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Tests Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/platform/elapsed-timer.h" 10 #include "src/base/platform/elapsed-timer.h"
(...skipping 530 matching lines...) Expand 10 before | Expand all | Expand 10 after
541 graph_reducer.AddReducer(&select); 541 graph_reducer.AddReducer(&select);
542 graph_reducer.ReduceGraph(); 542 graph_reducer.ReduceGraph();
543 } 543 }
544 }; 544 };
545 545
546 546
547 struct ComputeSchedulePhase { 547 struct ComputeSchedulePhase {
548 static const char* phase_name() { return "scheduling"; } 548 static const char* phase_name() { return "scheduling"; }
549 549
550 void Run(PipelineData* data, Zone* temp_zone) { 550 void Run(PipelineData* data, Zone* temp_zone) {
551 Schedule* schedule = Scheduler::ComputeSchedule(temp_zone, data->graph()); 551 Schedule* schedule = Scheduler::ComputeSchedule(
552 temp_zone, data->graph(), data->info()->is_splitting_enabled()
553 ? Scheduler::kSplitNodes
554 : Scheduler::kNoFlags);
552 TraceSchedule(schedule); 555 TraceSchedule(schedule);
553 if (FLAG_turbo_verify) ScheduleVerifier::Run(schedule); 556 if (FLAG_turbo_verify) ScheduleVerifier::Run(schedule);
554 data->set_schedule(schedule); 557 data->set_schedule(schedule);
555 } 558 }
556 }; 559 };
557 560
558 561
559 struct InstructionSelectionPhase { 562 struct InstructionSelectionPhase {
560 static const char* phase_name() { return "select instructions"; } 563 static const char* phase_name() { return "select instructions"; }
561 564
(...skipping 607 matching lines...) Expand 10 before | Expand all | Expand 10 after
1169 } 1172 }
1170 1173
1171 1174
1172 void Pipeline::TearDown() { 1175 void Pipeline::TearDown() {
1173 InstructionOperand::TearDownCaches(); 1176 InstructionOperand::TearDownCaches();
1174 } 1177 }
1175 1178
1176 } // namespace compiler 1179 } // namespace compiler
1177 } // namespace internal 1180 } // namespace internal
1178 } // namespace v8 1181 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698