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 520 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
531 | 531 |
532 struct InliningPhase { | 532 struct InliningPhase { |
533 static const char* phase_name() { return "inlining"; } | 533 static const char* phase_name() { return "inlining"; } |
534 | 534 |
535 void Run(PipelineData* data, Zone* temp_zone) { | 535 void Run(PipelineData* data, Zone* temp_zone) { |
536 JSGraphReducer graph_reducer(data->jsgraph(), temp_zone); | 536 JSGraphReducer graph_reducer(data->jsgraph(), temp_zone); |
537 DeadCodeElimination dead_code_elimination(&graph_reducer, data->graph(), | 537 DeadCodeElimination dead_code_elimination(&graph_reducer, data->graph(), |
538 data->common()); | 538 data->common()); |
539 CommonOperatorReducer common_reducer(&graph_reducer, data->graph(), | 539 CommonOperatorReducer common_reducer(&graph_reducer, data->graph(), |
540 data->common(), data->machine()); | 540 data->common(), data->machine()); |
541 JSCallReducer call_reducer(data->jsgraph()); | 541 JSCallReducer call_reducer(data->jsgraph(), |
| 542 data->info()->is_deoptimization_enabled() |
| 543 ? JSCallReducer::kDeoptimizationEnabled |
| 544 : JSCallReducer::kNoFlags); |
542 JSContextSpecialization context_specialization( | 545 JSContextSpecialization context_specialization( |
543 &graph_reducer, data->jsgraph(), | 546 &graph_reducer, data->jsgraph(), |
544 data->info()->is_function_context_specializing() | 547 data->info()->is_function_context_specializing() |
545 ? data->info()->context() | 548 ? data->info()->context() |
546 : MaybeHandle<Context>()); | 549 : MaybeHandle<Context>()); |
547 JSFrameSpecialization frame_specialization(data->info()->osr_frame(), | 550 JSFrameSpecialization frame_specialization(data->info()->osr_frame(), |
548 data->jsgraph()); | 551 data->jsgraph()); |
549 JSInliningHeuristic inlining(&graph_reducer, | 552 JSInliningHeuristic inlining(&graph_reducer, |
550 data->info()->is_inlining_enabled() | 553 data->info()->is_inlining_enabled() |
551 ? JSInliningHeuristic::kGeneralInlining | 554 ? JSInliningHeuristic::kGeneralInlining |
(...skipping 889 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1441 tcf << AsC1VRegisterAllocationData("CodeGen", | 1444 tcf << AsC1VRegisterAllocationData("CodeGen", |
1442 data->register_allocation_data()); | 1445 data->register_allocation_data()); |
1443 } | 1446 } |
1444 | 1447 |
1445 data->DeleteRegisterAllocationZone(); | 1448 data->DeleteRegisterAllocationZone(); |
1446 } | 1449 } |
1447 | 1450 |
1448 } // namespace compiler | 1451 } // namespace compiler |
1449 } // namespace internal | 1452 } // namespace internal |
1450 } // namespace v8 | 1453 } // namespace v8 |
OLD | NEW |