RFR(S): 8213538: VM crashes when MaxVectorSize is set to 0, 1 or 2
Vladimir Kozlov
vladimir.kozlov at oracle.com
Tue Nov 13 16:55:52 UTC 2018
You don't need max_max because the value reflect real max vector size supported by hardware. And we use this size to
initialize a flag - only this initialization is related to flag. There for I asked "max_vector_size and min_vector_size"
names.
Thanks,
Vladimir
On 11/13/18 1:31 AM, Nils Eliasson wrote:
> Hi,
>
> The flag name is MaxVectorSize - so then it becomes max_max_vector_size and min_max_vector_size which is a bit hard to
> read. In this new rev I opted for max_MaxVectorSize and min_MaxVectorSize to emphasize the relationship with the flag.
>
> I am all open to other suggestions.
>
> http://cr.openjdk.java.net/~neliasso/8213538/webrev.02
>
> Regards,
> Nils
>
>
> On 2018-11-12 19:18, Vladimir Kozlov wrote:
>> Hi Nils,
>>
>> Fix and refactoring looks good.
>>
>> The only complain I have is names of locals. Can you use full names: max_vector_size and min_vector_size?
>>
>> Please, add testing results link to bug report.
>>
>> Thanks,
>> Vladimir
>>
>> On 11/12/18 3:14 AM, Nils Eliasson wrote:
>>> Hi,
>>>
>>> This patch add the requirement that MaxVectorSize must be at least 4 on x64.
>>>
>>> The background is that we crash in startup when testing when setting it to 0, 1 or 2. When MaxVectorSize is less than
>>> 4, the XMM reg types won't be initialized, and then we crash in intrinsics that unconditionally use XMM regs. Since
>>> SSE2 is the required minimum on x64, the assumption that you can use XMM regs is always valid. This adds the
>>> requirement that MaxVectorSize is at least 4.
>>>
>>> I had to do a little refactoring to make the code more readable, but the essence is the same.
>>>
>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8213538
>>>
>>> Webrev: http://cr.openjdk.java.net/~neliasso/8213538/webrev/
>>>
>>> Testing is running.
>>>
>>> Please review,
>>>
>>> // Nils
>>>
>
More information about the hotspot-compiler-dev
mailing list