RFR (S): 7174532: jdk/test/java/lang/Math/WorstCaseTests.java failing on x86

Vladimir Kozlov vladimir.kozlov at oracle.com
Thu Jun 7 10:45:12 PDT 2012


Roland Westrelin wrote:
>>> Could you rename verify_ctw() to verify_fpu_ctw() since there are 
>>> other control
>>> words. Could you explain why it is only problem in VM 32-bit and add 
>>> comment?
>>
>> It's 32bit only because on 64 bit the fpu cw it set to extended 
>> precision (it seems to be the default for the process?). Do we want to 
>> extend verify_fpu_ctw() so it checks the control world on 64 bit as 
>> well? It's not checked anywhere else even though I think, in other 
>> places than exp and pow, we make assumptions about the control word on 
>> 64 bit (that uses the fpu won't trigger exceptions for instance).
> 
> It's not that simple. We had the failure on windows-x64 (but not 
> solaris-x64 or linux-x64). So something needs to be done on 64 bit as well.

Yes, windows may set different fpu_ctw. May be instead of verification we should 
save/restore current control word. I surprise that we don't have problems with 
Log and Trigonometric instructions.

An other thing to test is to run 32bit VM with UseSSE=0.

Thanks,
Vladimir

> 
> Roland.


More information about the hotspot-compiler-dev mailing list