Index: src/compiler/simplified-lowering.cc |
diff --git a/src/compiler/simplified-lowering.cc b/src/compiler/simplified-lowering.cc |
index 15fcab55df0b19365a75b2fd2cf72e42065a5f6c..9f0b5f681e4f08f5b146f187b7146de8f0a0df64 100644 |
--- a/src/compiler/simplified-lowering.cc |
+++ b/src/compiler/simplified-lowering.cc |
@@ -2306,6 +2306,17 @@ class RepresentationSelector { |
} |
return; |
} |
+ case IrOpcode::kCheckReceiver: { |
+ if (InputIs(node, Type::Receiver())) { |
+ VisitUnop(node, UseInfo::AnyTagged(), |
+ MachineRepresentation::kTaggedPointer); |
+ if (lower()) DeferReplacement(node, node->InputAt(0)); |
+ } else { |
+ VisitUnop(node, UseInfo::CheckedHeapObjectAsTaggedPointer(), |
+ MachineRepresentation::kTaggedPointer); |
+ } |
+ return; |
+ } |
case IrOpcode::kCheckSmi: { |
if (SmiValuesAre32Bits() && truncation.IsUsedAsWord32()) { |
VisitUnop(node, UseInfo::CheckedSignedSmallAsWord32(), |