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

Vladimir Kozlov vladimir.kozlov at oracle.com
Fri Jul 2 13:01:09 PDT 2010


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