[9] RFR(S): 8143208: compiler/c1/6855215/Test6855215.java supports_sse2() failed

Zoltán Majó zoltan.majo at oracle.com
Mon Nov 23 06:54:49 UTC 2015


Thank you, Vladimir, for the review!

Best regards,


Zoltan

On 11/20/2015 08:53 PM, Vladimir Kozlov wrote:
> Looks good.
>
> Thanks,
> Vladimri
>
> On 11/20/15 11:42 AM, Zoltán Majó wrote:
>> Hi Vladimir,
>>
>>
>> thank your the feedback!
>>
>> On 11/20/2015 05:52 PM, Vladimir Kozlov wrote:
>>> On 11/20/15 7:07 AM, Zoltán Majó wrote:
>>>> Hi,
>>>>
>>>>
>>>> please review the patch for 8143208.
>>>>
>>>> https://bugs.openjdk.java.net/browse/JDK-8143208
>>>>
>>>> Problem: The failure is triggered on linux_x86_32 with -XX:UseSSE=0
>>>> because the MacroAssembler::has_negatives() method attempts to emit a
>>>> movdl instruction that is available only if UseSSE >= 2.
>>>>
>>>> Solution:
>>>> - Change the has_negatives() method to check if SSE42 intrinsics are
>>>> enabled before attempting to emit SSE instructions. The check is
>>>> performed on the  value of 'UseSSE42Intrinsics' flag for consistency
>>>> reasons: All method emitting string-related intrinsics check the value
>>>> of that flag before emitting SSE instructions.
>>>
>>> has_negatives() in .ad files does not have any predicates and there is
>>> pass in MacroAssembler::has_negatives() where SSE is not used. So
>>> guarding with UseSSE42Intrinsics does not stand here. I will suggest
>>> to use (UseSSE >=2) instead.
>>
>> OK, I updated the condition in has_negatives(). Here is the new webrev:
>> http://cr.openjdk.java.net/~zmajo/8143208/webrev.01/
>>
>> I re-tested with JPRT and the failing test case, both were successful.
>>
>> Thank you and best regards,
>>
>>
>> Zoltan
>>
>>>
>>> Otherwise changes are good.
>>>
>>> Thanks,
>>> Vladimir
>>>
>>>> - Change the processing of command line-flags to not allow setting
>>>> 'UseSSE42Intrinsics' to true if SSE4.2 has been disabled or is not
>>>> available.
>>>> - Add asserts that fail if UseSSE<4 to all places where
>>>> UseSSE42Intrinsic assumed to be true.
>>>>
>>>> Webrev:
>>>> http://cr.openjdk.java.net/~zmajo/8143208/webrev.00/
>>>>
>>>> Testing:
>>>> - JPRT;
>>>> - executed failing test locally with linux_x86_32 build.
>>>>
>>>> Thank you and best regards,
>>>>
>>>>
>>>> Zoltan
>>>>
>>



More information about the hotspot-compiler-dev mailing list