| Index: src/compiler/pipeline.cc
|
| diff --git a/src/compiler/pipeline.cc b/src/compiler/pipeline.cc
|
| index 236e7f655267e36f7aa20ced8a607a58bf2a03b1..10bbe7c1bc6d38e5b962b0646d6465b4b0e811cf 100644
|
| --- a/src/compiler/pipeline.cc
|
| +++ b/src/compiler/pipeline.cc
|
| @@ -533,6 +533,15 @@ struct AllocateDoubleRegistersPhase {
|
| };
|
|
|
|
|
| +struct ReuseSpillSlotsPhase {
|
| + static const char* phase_name() { return "reuse spill slots"; }
|
| +
|
| + void Run(PipelineData* data, Zone* temp_zone) {
|
| + data->register_allocator()->ReuseSpillSlots();
|
| + }
|
| +};
|
| +
|
| +
|
| struct PopulatePointerMapsPhase {
|
| static const char* phase_name() { return "populate pointer maps"; }
|
|
|
| @@ -935,6 +944,7 @@ void Pipeline::AllocateRegisters(const RegisterConfiguration* config,
|
| data->set_compilation_failed();
|
| return;
|
| }
|
| + Run<ReuseSpillSlotsPhase>();
|
| Run<PopulatePointerMapsPhase>();
|
| Run<ConnectRangesPhase>();
|
| Run<ResolveControlFlowPhase>();
|
|
|