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

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

Issue 1410953006: [turbofan] Properly type field access to stable heap object maps. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Final workarounds. Created 5 years, 1 month 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
« no previous file with comments | « src/compiler/js-native-context-specialization.cc ('k') | src/compiler/typer.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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/adapters.h" 10 #include "src/base/adapters.h"
(...skipping 1079 matching lines...) Expand 10 before | Expand all | Expand 10 after
1090 RunPrintAndVerify("Early trimmed", true); 1090 RunPrintAndVerify("Early trimmed", true);
1091 1091
1092 if (FLAG_print_turbo_replay) { 1092 if (FLAG_print_turbo_replay) {
1093 // Print a replay of the initial graph. 1093 // Print a replay of the initial graph.
1094 GraphReplayPrinter::PrintReplay(data.graph()); 1094 GraphReplayPrinter::PrintReplay(data.graph());
1095 } 1095 }
1096 1096
1097 base::SmartPointer<Typer> typer; 1097 base::SmartPointer<Typer> typer;
1098 if (info()->is_typing_enabled()) { 1098 if (info()->is_typing_enabled()) {
1099 // Type the graph. 1099 // Type the graph.
1100 typer.Reset(new Typer(isolate(), data.graph(), info()->function_type())); 1100 typer.Reset(new Typer(isolate(), data.graph(),
1101 info()->is_deoptimization_enabled()
1102 ? Typer::kDeoptimizationEnabled
1103 : Typer::kNoFlags,
1104 info()->dependencies(), info()->function_type()));
1101 Run<TyperPhase>(typer.get()); 1105 Run<TyperPhase>(typer.get());
1102 RunPrintAndVerify("Typed"); 1106 RunPrintAndVerify("Typed");
1103 } 1107 }
1104 1108
1105 BeginPhaseKind("lowering"); 1109 BeginPhaseKind("lowering");
1106 1110
1107 if (info()->is_typing_enabled()) { 1111 if (info()->is_typing_enabled()) {
1108 // Lower JSOperators where we can determine types. 1112 // Lower JSOperators where we can determine types.
1109 Run<TypedLoweringPhase>(); 1113 Run<TypedLoweringPhase>();
1110 RunPrintAndVerify("Lowered typed"); 1114 RunPrintAndVerify("Lowered typed");
(...skipping 304 matching lines...) Expand 10 before | Expand all | Expand 10 after
1415 tcf << AsC1VRegisterAllocationData("CodeGen", 1419 tcf << AsC1VRegisterAllocationData("CodeGen",
1416 data->register_allocation_data()); 1420 data->register_allocation_data());
1417 } 1421 }
1418 1422
1419 data->DeleteRegisterAllocationZone(); 1423 data->DeleteRegisterAllocationZone();
1420 } 1424 }
1421 1425
1422 } // namespace compiler 1426 } // namespace compiler
1423 } // namespace internal 1427 } // namespace internal
1424 } // namespace v8 1428 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/js-native-context-specialization.cc ('k') | src/compiler/typer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698