[9] RFR(S): [TESTBUG] Whitebox tests fail with -XX:CompileThreshold=100
Tobias Hartmann
tobias.hartmann at oracle.com
Wed Oct 15 08:47:07 UTC 2014
Hi,
please review the following patch.
Bug: https://bugs.openjdk.java.net/browse/JDK-8060454
Webrev: http://cr.openjdk.java.net/~thartmann/8060454/webrev.00/
Problem:
The problem is that with a low CompileThreshold we execute the loop to trigger
osr compilation fewer times. While the osr compilation should be triggered there
is still a non-osr compilation request in the compile queue and therefore the
osr compilation fails (see 'compilation_is_in_queue(method)' check in
'CompileBroker::compile_method_base').
Solution:
I moved the call to 'waitAndDeoptimize' from the warmup methods to the osr
triggering methods to make sure that no non-osr compilation is in the queue
after warmup.
Maybe we should think about allowing both osr and non-osr compilations in the
compile queue at the same time. Currently, we check this with the access flag
'JVM_ACC_QUEUED'. Unfortunately, it is not possible to simply add a new flag for
osr compilations because all bitmasks are taken.
Testing:
Executed failing tests on JPRT with different VM options (this time including
-XX:CompileThreshold). Results are attached to bug.
Thanks,
Tobias
More information about the hotspot-compiler-dev
mailing list