Request for reviews (M): 6966411: escape.cpp:450 assert(base->Opcode() == Op_ConP

Tom Rodriguez tom.rodriguez at oracle.com
Fri Jul 2 13:32:45 PDT 2010


I'm glad you're doing this.  Is the oop_null/noop_null stuff still needed?  I can't remember the reason for that.  Could it be moved into compute_escape?  Maybe the PrintEscapeAnalysis stuff could be there too.  Otherwise it looks good.

tom

On Jul 2, 2010, at 1:01 PM, Vladimir Kozlov wrote:

> I wanted to do this for long time as EA improvement
> since IGVN optimization will simplify ideal graph.
> 
> http://cr.openjdk.java.net/~kvn/6966411/webrev
> 
> Fixed 6966411: escape.cpp:450 assert(base->Opcode() == Op_ConP
> 
> OptimizeStringConcat optimization replaces calls with inlined
> methods during do_late_inline(). It creates dead paths which
> are not eliminated before Escape Analysis since IGVN optimization
> is not executed:
> 
> 62     ConL    ===  0  [[ 63  92 ]]  #long:8
> 63     AddP    === _  1  1  62  [[ 64 ]]  !jvms: CtorTests::StringBuilder0002 @ bci:7
> 
> Solution:
> Execute IGVN optimization before and after Escape Analysis.
> Use new PhaseIterGVN field ConnectionGraph::_igvn instead of
> passing phase as EA methods parameter.
> 
> Failed test, JPRT



More information about the hotspot-compiler-dev mailing list