Index: src/compiler/js-typed-lowering.cc |
diff --git a/src/compiler/js-typed-lowering.cc b/src/compiler/js-typed-lowering.cc |
index 24081b9535f0d9fa781c56af47070a3f8a0f21a3..96eee426c247305d2e03bb7b224b75b7b50d0c3c 100644 |
--- a/src/compiler/js-typed-lowering.cc |
+++ b/src/compiler/js-typed-lowering.cc |
@@ -889,6 +889,13 @@ Reduction JSTypedLowering::ReduceJSEqual(Node* node, bool invert) { |
return NoChange(); |
} |
+Reduction JSTypedLowering::ReduceJSIsUndetectable(Node* node) { |
+ // ObjectIsUndetectable does not need a context input. So remove it. |
+ node->TrimInputCount(1); |
+ NodeProperties::ChangeOp(node, simplified()->ObjectIsUndetectable()); |
+ return Changed(node); |
+} |
+ |
Reduction JSTypedLowering::ReduceJSStrictEqual(Node* node, bool invert) { |
JSBinopReduction r(this, node); |
if (r.left() == r.right()) { |
@@ -2209,6 +2216,8 @@ Reduction JSTypedLowering::Reduce(Node* node) { |
return ReduceJSEqual(node, true); |
case IrOpcode::kJSStrictEqual: |
return ReduceJSStrictEqual(node, false); |
+ case IrOpcode::kJSIsUndetectable: |
+ return ReduceJSIsUndetectable(node); |
case IrOpcode::kJSStrictNotEqual: |
return ReduceJSStrictEqual(node, true); |
case IrOpcode::kJSLessThan: // fall through |