[13] RFR(T) 8209590: compiler/compilercontrol/DontInlineCommandTest.java test fails with "Inline message differs" error

Igor Ignatyev igor.ignatyev at oracle.com
Thu Jun 13 23:44:00 UTC 2019


Hi Vladimir,

this sounds reasonable to me, reviewed.

Cheers,
-- Igor

> On Jun 13, 2019, at 4:04 PM, Vladimir Kozlov <vladimir.kozlov at oracle.com> wrote:
> 
> Unfortunately bug is closed because failed test is closed. But fix is in open test code:
> 
> http://cr.openjdk.java.net/~kvn/8209590/webrev.00/
> 
> Here is evaluation (from bug report):
> 
> The test checks that specified test method [1] is not inlined because -XX:CompileCommand=dontinline,*Klass*,* command line flag is used.
> 
> But during failure the method is not inlined for a different reason:
> 'already compiled into a medium method'
> 
> It happens due to flags combination passed by testing environment:
> -ea -esa -XX:CompileThreshold=100 -XX:-DoEscapeAnalysis -XX:-TieredCompilation
> 
> Based on LogCompilation output the method's compiled size is 344 [2].
> 
> In failing case -XX:-TieredCompilation is off and InlineSmallCode flag default value for x86 is 1000 [3].
> The code size inlining criteria is using InlineSmallCode/4 [4]. So 344 > 250.
> 
> The fix is to set -XX:InlineSmallCode=4000 for tests which check inlining decisions.
> 
> Tested with failing test.
> 
> Thanks,
> Vladimir
> 
> [1] http://hg.openjdk.java.net/jdk/jdk/file/d57d61aafef9/test/hotspot/jtreg/compiler/compilercontrol/share/pool/sub/Klass.java#l60
> 
> [2] <task compile_id='2409' method='compiler.compilercontrol.share.pool.sub.Klass$Internal smethod (Ljava/lang/Integer;)Ljava/lang/Integer;' bytes='20' count='50' backedge_count='1' iicount='100' blocking='1' stamp='18.732'>
> <task_done success='1' nmsize='344' count='50' backedge_count='1' inlined_bytes='106' stamp='18.735'/>
> 
> [3] http://hg.openjdk.java.net/jdk/jdk/file/d57d61aafef9/src/hotspot/cpu/x86/globals_x86.hpp#l55
> 
> [4] http://hg.openjdk.java.net/jdk/jdk/file/d57d61aafef9/src/hotspot/share/opto/bytecodeInfo.cpp#l160



More information about the hotspot-compiler-dev mailing list