Request for reviews (S): 7044738: Loop unroll optimization causes incorrect result

Vladimir Kozlov vladimir.kozlov at oracle.com
Wed Jun 1 12:54:02 PDT 2011


For next release, too risky for jdk7.

http://cr.openjdk.java.net/~kvn/7044738/webrev

Fixed 7044738: Loop unroll optimization causes incorrect result

It is rare case when OSR compilation is done for nested loop which prevents 
ciTypeFlow to clone loop's head. As result the control node of loop's nodes is 
loop's back control. During loop iterations split clone_up_backedge_goo() 
creates clones for nodes which are pinned to loop's back control and it does not 
take into account memory dependencies by creating duplicated clones.

Added regression test. Tested with full CTW.


More information about the hotspot-compiler-dev mailing list