| Index: src/compiler/machine-operator-reducer.cc
|
| diff --git a/src/compiler/machine-operator-reducer.cc b/src/compiler/machine-operator-reducer.cc
|
| index b2437de6473dbe7e26b4f687d3c8a53624fa0a26..07d6820f069ebcf4d878269770fb6abed934784c 100644
|
| --- a/src/compiler/machine-operator-reducer.cc
|
| +++ b/src/compiler/machine-operator-reducer.cc
|
| @@ -396,11 +396,21 @@ Reduction MachineOperatorReducer::Reduce(Node* node) {
|
| }
|
| break;
|
| }
|
| + case IrOpcode::kFloat64Atanh: {
|
| + Float64Matcher m(node->InputAt(0));
|
| + if (m.HasValue()) return ReplaceFloat64(base::ieee754::atanh(m.Value()));
|
| + break;
|
| + }
|
| case IrOpcode::kFloat64Exp: {
|
| Float64Matcher m(node->InputAt(0));
|
| if (m.HasValue()) return ReplaceFloat64(base::ieee754::exp(m.Value()));
|
| break;
|
| }
|
| + case IrOpcode::kFloat64Expm1: {
|
| + Float64Matcher m(node->InputAt(0));
|
| + if (m.HasValue()) return ReplaceFloat64(base::ieee754::expm1(m.Value()));
|
| + break;
|
| + }
|
| case IrOpcode::kFloat64Log: {
|
| Float64Matcher m(node->InputAt(0));
|
| if (m.HasValue()) return ReplaceFloat64(base::ieee754::log(m.Value()));
|
| @@ -421,6 +431,11 @@ Reduction MachineOperatorReducer::Reduce(Node* node) {
|
| if (m.HasValue()) return ReplaceFloat64(base::ieee754::log10(m.Value()));
|
| break;
|
| }
|
| + case IrOpcode::kFloat64Cbrt: {
|
| + Float64Matcher m(node->InputAt(0));
|
| + if (m.HasValue()) return ReplaceFloat64(base::ieee754::cbrt(m.Value()));
|
| + break;
|
| + }
|
| case IrOpcode::kChangeFloat32ToFloat64: {
|
| Float32Matcher m(node->InputAt(0));
|
| if (m.HasValue()) return ReplaceFloat64(m.Value());
|
|
|