| Index: src/compiler/typer.cc
|
| diff --git a/src/compiler/typer.cc b/src/compiler/typer.cc
|
| index 7caf16dff9499d80c5dcde6b7cba3fb0bd454a7e..7826e1703c7d809416a44170539aeca8967b511f 100644
|
| --- a/src/compiler/typer.cc
|
| +++ b/src/compiler/typer.cc
|
| @@ -1543,9 +1543,10 @@ Type* Typer::Visitor::JSCallFunctionTyper(Type* fun, Typer* t) {
|
| case kMathTrunc:
|
| return t->cache_.kIntegerOrMinusZeroOrNaN;
|
| // Unary math functions.
|
| + case kMathExp:
|
| + return Type::Union(Type::PlainNumber(), Type::NaN(), t->zone());
|
| case kMathAbs:
|
| case kMathLog:
|
| - case kMathExp:
|
| case kMathSqrt:
|
| case kMathCos:
|
| case kMathSin:
|
| @@ -1800,6 +1801,10 @@ Type* Typer::Visitor::TypeNumberAtan(Node* node) { return Type::Number(); }
|
|
|
| Type* Typer::Visitor::TypeNumberAtan2(Node* node) { return Type::Number(); }
|
|
|
| +Type* Typer::Visitor::TypeNumberExp(Node* node) {
|
| + return Type::Union(Type::PlainNumber(), Type::NaN(), zone());
|
| +}
|
| +
|
| Type* Typer::Visitor::TypeNumberLog(Node* node) { return Type::Number(); }
|
|
|
| Type* Typer::Visitor::TypeNumberLog1p(Node* node) { return Type::Number(); }
|
| @@ -2559,6 +2564,8 @@ Type* Typer::Visitor::TypeFloat64Atan(Node* node) { return Type::Number(); }
|
|
|
| Type* Typer::Visitor::TypeFloat64Atan2(Node* node) { return Type::Number(); }
|
|
|
| +Type* Typer::Visitor::TypeFloat64Exp(Node* node) { return Type::Number(); }
|
| +
|
| Type* Typer::Visitor::TypeFloat64Log(Node* node) { return Type::Number(); }
|
|
|
| Type* Typer::Visitor::TypeFloat64Log1p(Node* node) { return Type::Number(); }
|
|
|