[9] RFR(S) 8171187: Expected compilation level after compilation to be no less than 1
Vladimir Kozlov
vladimir.kozlov at oracle.com
Wed Dec 14 01:22:20 UTC 2016
http://cr.openjdk.java.net/~kvn/8171187/webrev/
https://bugs.openjdk.java.net/browse/JDK-8171187
compiler/aot/RecompilationTest.java fails with
java.lang.RuntimeException: METHOD_TEST: expected compilation level after compilation to be no less than 1 for METHOD_TEST: expected -1 >= 1
The AOT method SimpleTestCaseHelper.method() is not recompiled sometimes.
The main cause is that this method is very trivial ( int method() { return 42; } )
and it is inlined into other AOT methods which are executed during run.
An other cause it profiling event is triggered using 'rdtsc; test $0xff,%eax;' instructions. Which may not jump during 256 invocations.
These changes only fix inlining issue by adding -XX:CompileCommand=dontinline flag to AOT compilation commands.
I added missing -UseCompressedOops flags which I did not add in JDK-8171134 fix.
I added suffix to AOT libraries names to keep both in case of debugging.
And I replaced -XX:CompileCommand=dontinline,*.* with -XX:-Inline for java execution commands. I verified that test methods are not inlined during recompilation.
Thanks,
Vladimir
More information about the hotspot-compiler-dev
mailing list