RFR: 8279668: x86: AVX2 versions of vpxor should be asserted [v3]
Jie Fu
jiefu at openjdk.java.net
Mon Jan 10 13:34:38 UTC 2022
On Mon, 10 Jan 2022 13:18:05 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:
>> Got the SIGILLs on some machines when testing JDK-8279621. That patch started using shorter `vpxor` versions on `UseAVX = 1` path, which tried to use `VEX.256`-encoded `vpxor` instruction that is only available on AVX2. This should be at very least asserted in assembler code.
>>
>> Also fixed the implicit `bool` -> `int` conversion to `vector_len`.
>>
>> Additional testing:
>> - [x] Linux x86_64 fastdebug `tier1` with `-XX:UseAVX=1`
>
> Aleksey Shipilev has updated the pull request incrementally with one additional commit since the last revision:
>
> Add more asserts
src/hotspot/cpu/x86/macroAssembler_x86.hpp line 1493:
> 1491: // Simple version for AVX2 256bit vectors
> 1492: void vpxor(XMMRegister dst, XMMRegister src) {
> 1493: assert(UseAVX >= 2, "Only with AVX2");
I would suggest the assert msg as "Only with AVX2 or above".
We should also update the copyright year.
-------------
PR: https://git.openjdk.java.net/jdk/pull/7005
More information about the hotspot-dev
mailing list