Request for reviews (S): 6910605: C2: NullPointerException/ClassCaseException is thrown when C2 with DeoptimizeALot is used

Vladimir Kozlov Vladimir.Kozlov at Sun.COM
Fri Feb 5 18:59:30 PST 2010


http://cr.openjdk.java.net/~kvn/6910605/webrev.00

Fixed 6910605: C2: NullPointerException/ClassCaseException is thrown when C2 with DeoptimizeALot is used

Problem:
Regression after 6603492: multianewarray should generate same code as anewarray for 1-d arrays.
After deoptimization interpreter will continue execution after _multianewarray
even if compiled code did not allocate all needed arrays.

Solution:
Set the reexecute bit for the interpreter to reexecute the _multianewarray bytecode
if deoptimization happens. Do it unconditionally even for one dimension array.

Added regression test copied from nsk/coverage/runtime/runtime007

Reviewed by:

Fix verified (y/n): y, tests

Other testing:
JPRT



More information about the hotspot-compiler-dev mailing list