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 5562c6e36e4b56a16c8292e60302b5769d6023bc..7d43bfb26d7c068a5970198064cdd798bebbc38b 100644 |
--- a/src/compiler/js-native-context-specialization.h |
+++ b/src/compiler/js-native-context-specialization.h |
@@ -85,6 +85,20 @@ class JSNativeContextSpecialization final : public AdvancedReducer { |
Handle<Context> native_context, |
Handle<JSObject> holder); |
+ // Extract receiver maps from {nexus} and filter based on {receiver} if |
+ // possible. |
+ bool ExtractReceiverMaps(Node* receiver, Node* effect, |
+ FeedbackNexus const& nexus, |
+ MapHandleList* receiver_maps); |
+ |
+ // Try to infer a map for the given {receiver} at the current {effect}. |
+ // If a map is returned then you can be sure that the {receiver} definitely |
+ // has the returned map at this point in the program (identified by {effect}). |
+ MaybeHandle<Map> InferReceiverMap(Node* receiver, Node* effect); |
+ // Try to infer a root map for the {receiver} independent of the current |
+ // program location. |
+ MaybeHandle<Map> InferReceiverRootMap(Node* receiver); |
+ |
// Retrieve the native context from the given {node} if known. |
MaybeHandle<Context> GetNativeContext(Node* node); |