| Index: src/compiler/operation-typer.cc
|
| diff --git a/src/compiler/operation-typer.cc b/src/compiler/operation-typer.cc
|
| index 53c2770864864de5294d62403dfc8110677143da..d50862c61e406fb738a5dfd3c5ed46cf12c8c0c0 100644
|
| --- a/src/compiler/operation-typer.cc
|
| +++ b/src/compiler/operation-typer.cc
|
| @@ -485,7 +485,10 @@ Type* OperationTyper::NumberToUint32(Type* type) {
|
|
|
| Type* OperationTyper::NumberSilenceNaN(Type* type) {
|
| DCHECK(type->Is(Type::Number()));
|
| - // TODO(turbofan): We should have a dedicated type for the signaling NaN.
|
| + // TODO(jarin): This is a terrible hack; we definitely need a dedicated type
|
| + // for the hole (tagged and/or double). Otherwise if the input is the hole
|
| + // NaN constant, we'd just eliminate this node in JSTypedLowering.
|
| + if (type->Maybe(Type::NaN())) return Type::Number();
|
| return type;
|
| }
|
|
|
|
|