Request for reviews (M): 7105605: Use EA info to optimize pointers compare

Christian Thalinger christian.thalinger at oracle.com
Wed Nov 9 02:29:52 PST 2011


On Nov 9, 2011, at 5:27 AM, Vladimir Kozlov wrote:

> http://cr.openjdk.java.net/~kvn/7105605/webrev

src/share/vm/opto/escape.cpp:

You should set _pcmp_neq and _pcmp_eq to NULL in the ConnectionGraph constructor.

ConnectionGraph::do_analysis:

+   Node* pcmp_neq = OptimizePtrCompare ? igvn->makecon(TypeInt::CC_GT) : NULL;
+   Node* pcmp_eq  = OptimizePtrCompare ? igvn->makecon(TypeInt::CC_EQ) : NULL;

Are these two also added for the same reason as the comment says?

    // Add ConP#NULL and ConN#NULL nodes before ConnectionGraph construction
    // to create space for them in ConnectionGraph::_nodes[].

Weird.

ConnectionGraph::optimize_ptr_compare:

Is it intentional that the variables are called "has_unknow_obj1" instead of "unknown"?

Otherwise this looks good, as far as I can tell.

-- Chris

> 
> 7105605: Use EA info to optimize pointers compare
> 
> EA Connection Graph can help to optimize pointers compare for non escaping allocations.
> 
> Tested with CTW, jtreg, NSK, refworkload.
> 
> Thanks,
> Vladimir



More information about the hotspot-compiler-dev mailing list