| Index: src/compiler/js-native-context-specialization.h
|
| diff --git a/src/compiler/js-native-context-specialization.h b/src/compiler/js-native-context-specialization.h
|
| index cd1b3349adac389c346837f3d1a9c43d2b5b26e8..e82f0664c7433a195745b4892d8e2ebbebce50e7 100644
|
| --- a/src/compiler/js-native-context-specialization.h
|
| +++ b/src/compiler/js-native-context-specialization.h
|
| @@ -146,6 +146,17 @@ class JSNativeContextSpecialization final : public AdvancedReducer {
|
| // code dependencies and might use the array protector cell.
|
| bool CanTreatHoleAsUndefined(std::vector<Handle<Map>> const& receiver_maps);
|
|
|
| + // Checks if we know at compile time that the {receiver} either definitely
|
| + // has the {prototype} in it's prototype chain, or the {receiver} definitely
|
| + // doesn't have the {prototype} in it's prototype chain.
|
| + enum InferHasInPrototypeChainResult {
|
| + kIsInPrototypeChain,
|
| + kIsNotInPrototypeChain,
|
| + kMayBeInPrototypeChain
|
| + };
|
| + InferHasInPrototypeChainResult InferHasInPrototypeChain(
|
| + Node* receiver, Node* effect, Handle<JSReceiver> prototype);
|
| +
|
| // Extract receiver maps from {nexus} and filter based on {receiver} if
|
| // possible.
|
| bool ExtractReceiverMaps(Node* receiver, Node* effect,
|
|
|