src/share/vm/opto/escape.hpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File
*** old/src/share/vm/opto/escape.hpp	Tue Nov  2 15:10:08 2010
--- new/src/share/vm/opto/escape.hpp	Tue Nov  2 15:10:07 2010

*** 217,226 **** --- 217,229 ---- bool _collecting; // Indicates whether escape information // is still being collected. If false, // no new nodes will be processed. + bool _progress; // Indicates whether new Graph's edges + // were created. + uint _phantom_object; // Index of globally escaping object // that pointer values loaded from // a field which has not been set // are assumed to point to. uint _oop_null; // ConP(#NULL)
*** 264,273 **** --- 267,283 ---- // node indices of the source and destination of the edge void add_pointsto_edge(uint from_i, uint to_i); void add_deferred_edge(uint from_i, uint to_i); void add_field_edge(uint from_i, uint to_i, int offs); + // Add a edge of the specified type pointing to the specified target. + // Set _progress if new esge is added. + void add_edge(PointsToNode *f, uint to_i, PointsToNode::EdgeType et) { + uint e_cnt = f->edge_count(); + f->add_edge(to_i, et); + _progress |= (f->edge_count() != e_cnt); + } // Add an edge to node given by "to_i" from any field of adr_i whose offset // matches "offset" A deferred edge is added if to_i is a LocalVar, and // a pointsto edge is added if it is a JavaObject void add_edge_from_fields(uint adr, uint to_i, int offs);

src/share/vm/opto/escape.hpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File