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

Unified Diff: src/compiler/pipeline.cc

Issue 2607243002: [Turbofan] Make GenericLowering operate concurrently. (Closed)
Patch Set: REBASE. Created 3 years, 12 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/compiler/js-operator.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/compiler/pipeline.cc
diff --git a/src/compiler/pipeline.cc b/src/compiler/pipeline.cc
index 1202a0c9f06cb8ba4e17b65d7d64408ba72379ed..10daaefc490d6354a7a0cbc43bfbd8d341ed2526 100644
--- a/src/compiler/pipeline.cc
+++ b/src/compiler/pipeline.cc
@@ -979,6 +979,17 @@ struct LoopExitEliminationPhase {
}
};
+struct GenericLoweringPrepPhase {
+ static const char* phase_name() { return "generic lowering prep"; }
+
+ void Run(PipelineData* data, Zone* temp_zone) {
+ // Make sure we cache these code stubs.
+ data->jsgraph()->CEntryStubConstant(1);
+ data->jsgraph()->CEntryStubConstant(2);
+ data->jsgraph()->CEntryStubConstant(3);
+ }
+};
+
struct GenericLoweringPhase {
static const char* phase_name() { return "generic lowering"; }
@@ -1565,9 +1576,8 @@ bool PipelineImpl::CreateGraph() {
RunPrintAndVerify("Untyped", true);
#endif
- // Run generic lowering pass.
- Run<GenericLoweringPhase>();
- RunPrintAndVerify("Generic lowering", true);
+ // Do some hacky things to prepare generic lowering.
+ Run<GenericLoweringPrepPhase>();
data->EndPhaseKind();
@@ -1577,6 +1587,10 @@ bool PipelineImpl::CreateGraph() {
bool PipelineImpl::OptimizeGraph(Linkage* linkage) {
PipelineData* data = this->data_;
+ // Run generic lowering pass.
+ Run<GenericLoweringPhase>();
+ RunPrintAndVerify("Generic lowering", true);
+
data->BeginPhaseKind("block building");
// Run early optimization pass.
« no previous file with comments | « src/compiler/js-operator.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698