| Index: src/compiler/pipeline.cc
|
| diff --git a/src/compiler/pipeline.cc b/src/compiler/pipeline.cc
|
| index 899b0b8597260ed1499447c718d6045d216626fa..622ca7beb947ee0bf1151f58bb3286323f622582 100644
|
| --- a/src/compiler/pipeline.cc
|
| +++ b/src/compiler/pipeline.cc
|
| @@ -640,13 +640,15 @@ class PipelineWasmCompilationJob final : public CompilationJob {
|
| explicit PipelineWasmCompilationJob(
|
| CompilationInfo* info, JSGraph* jsgraph, CallDescriptor* descriptor,
|
| SourcePositionTable* source_positions,
|
| - ZoneVector<trap_handler::ProtectedInstructionData>* protected_insts)
|
| + ZoneVector<trap_handler::ProtectedInstructionData>* protected_insts,
|
| + bool allow_signalling_nan)
|
| : CompilationJob(info->isolate(), info, "TurboFan",
|
| State::kReadyToExecute),
|
| zone_stats_(info->isolate()->allocator()),
|
| data_(&zone_stats_, info, jsgraph, source_positions, protected_insts),
|
| pipeline_(&data_),
|
| - linkage_(descriptor) {}
|
| + linkage_(descriptor),
|
| + allow_signalling_nan_(allow_signalling_nan) {}
|
|
|
| protected:
|
| Status PrepareJobImpl() final;
|
| @@ -658,6 +660,7 @@ class PipelineWasmCompilationJob final : public CompilationJob {
|
| PipelineData data_;
|
| PipelineImpl pipeline_;
|
| Linkage linkage_;
|
| + bool allow_signalling_nan_;
|
| };
|
|
|
| PipelineWasmCompilationJob::Status
|
| @@ -682,7 +685,8 @@ PipelineWasmCompilationJob::ExecuteJobImpl() {
|
| DeadCodeElimination dead_code_elimination(&graph_reducer, data->graph(),
|
| data->common());
|
| ValueNumberingReducer value_numbering(scope.zone(), data->graph()->zone());
|
| - MachineOperatorReducer machine_reducer(data->jsgraph());
|
| + MachineOperatorReducer machine_reducer(data->jsgraph(),
|
| + allow_signalling_nan_);
|
| CommonOperatorReducer common_reducer(&graph_reducer, data->graph(),
|
| data->common(), data->machine());
|
| AddReducer(data, &graph_reducer, &dead_code_elimination);
|
| @@ -1749,10 +1753,11 @@ CompilationJob* Pipeline::NewCompilationJob(Handle<JSFunction> function) {
|
| CompilationJob* Pipeline::NewWasmCompilationJob(
|
| CompilationInfo* info, JSGraph* jsgraph, CallDescriptor* descriptor,
|
| SourcePositionTable* source_positions,
|
| - ZoneVector<trap_handler::ProtectedInstructionData>*
|
| - protected_instructions) {
|
| + ZoneVector<trap_handler::ProtectedInstructionData>* protected_instructions,
|
| + bool allow_signalling_nan) {
|
| return new PipelineWasmCompilationJob(
|
| - info, jsgraph, descriptor, source_positions, protected_instructions);
|
| + info, jsgraph, descriptor, source_positions, protected_instructions,
|
| + allow_signalling_nan);
|
| }
|
|
|
| bool Pipeline::AllocateRegistersForTesting(const RegisterConfiguration* config,
|
|
|