Index: src/compiler/node-properties.cc |
diff --git a/src/compiler/node-properties.cc b/src/compiler/node-properties.cc |
index 78a64593ba6b04422e94c1b47818013af6c884f9..cc3a07d7e3616867d44729ad9d97aa96e48c0484 100644 |
--- a/src/compiler/node-properties.cc |
+++ b/src/compiler/node-properties.cc |
@@ -339,6 +339,17 @@ MaybeHandle<Context> NodeProperties::GetSpecializationContext( |
// static |
+Node* NodeProperties::GetOuterContext(Node* node, size_t* depth) { |
+ Node* context = NodeProperties::GetContextInput(node); |
+ while (*depth > 0 && |
+ IrOpcode::IsContextChainExtendingOpcode(context->opcode())) { |
+ context = NodeProperties::GetContextInput(context); |
+ (*depth)--; |
+ } |
+ return context; |
+} |
+ |
+// static |
Type* NodeProperties::GetTypeOrAny(Node* node) { |
return IsTyped(node) ? node->type() : Type::Any(); |
} |