< prev index next >

src/hotspot/share/opto/escape.hpp

Print this page
@@ -483,10 +483,12 @@
    void find_scalar_replaceable_allocs(GrowableArray<JavaObjectNode*>& jobj_worklist, Unique_Node_List &reducible_merges);
  
    // Optimize ideal graph.
    void optimize_ideal_graph(GrowableArray<Node*>& ptr_cmp_worklist,
                              GrowableArray<MemBarStoreStoreNode*>& storestore_worklist);
+   // Expand flat accesses to accesses to each component if the object does not escape
+   void optimize_flat_accesses(GrowableArray<SafePointNode*>& sfn_worklist);
    // Optimize objects compare.
    const TypeInt* optimize_ptr_compare(Node* left, Node* right);
  
    // Returns unique corresponding java object or null.
    JavaObjectNode* unique_java_object(Node *n) const;

@@ -656,10 +658,11 @@
  
    bool can_eliminate_lock(AbstractLockNode* alock);
  
    // To be used by, e.g., BarrierSetC2 impls
    Node* get_addp_base(Node* addp);
+   DEBUG_ONLY(static bool is_load_array_klass_related(const Node* uncast_base));
  
    // Utility function for nodes that load an object
    void add_objload_to_connection_graph(Node* n, Unique_Node_List* delayed_worklist);
  
    // Add LocalVar node and edge if possible
< prev index next >