[12] RFR(S) 8207153: Some intrinsic tests take long time to run

Vladimir Kozlov vladimir.kozlov at oracle.com
Mon Aug 13 16:57:15 UTC 2018


On 8/13/18 9:44 AM, Mikael Vidstedt wrote:
> 
> Two questions:
> 
> 1. What happens if somebody decides to rename to Java method(s), but forgets to update the test?

WB.isIntrinsicAvailable() if intrinsic for old method is not available - there will be no ID for it and we will hit assert:

http://hg.openjdk.java.net/jdk/jdk/file/9fe4fc157f4e/src/hotspot/share/opto/c2compiler.cpp#l164

> 
> 2. Can/should we force this test to only run on machines where the underlying instructions are in fact available?

WB.isIntrinsicAvailable() checks flag:

http://hg.openjdk.java.net/jdk/jdk/file/9fe4fc157f4e/src/hotspot/share/classfile/vmSymbols.cpp#l712

and flag is set only when HW instructions are available:

http://hg.openjdk.java.net/jdk/jdk/file/9fe4fc157f4e/src/hotspot/cpu/x86/vm_version_x86.cpp#l755

Vladimir

> 
> Cheers,
> Mikael
> 
>> On Aug 10, 2018, at 5:05 PM, Vladimir Kozlov <vladimir.kozlov at oracle.com> wrote:
>>
>> http://cr.openjdk.java.net/~kvn/8207153/webrev.00/
>> https://bugs.openjdk.java.net/browse/JDK-8207153
>>
>> Use WhitBox API isIntrinsicAvailable() to guard execution of TestAESMain.java and TestBase64.java.
>> Also reduced number of loop iterations from 1M to 100K. Tests run with -Xbatch - compilation is guarantee with smaller number. And I checked results with +LogCompilation.
>>
>> Tested by running these 2 tests on X86 and SPARC.
>> And run locally using intrinsics flag to switch them off to confirm that new guard in tests works.
>>
>> -- 
>> Thanks,
>> Vladimir
> 


More information about the hotspot-compiler-dev mailing list