RFR: 8320206: Some intrinsics/stubs missing vzeroupper on x86_64
Vladimir Kozlov
kvn at openjdk.org
Thu Nov 16 00:09:29 UTC 2023
On Wed, 15 Nov 2023 21:28:46 GMT, Sandhya Viswanathan <sviswanathan at openjdk.org> wrote:
> The following intrinsics/stubs are missing vzeroupper:
> adler32 (since JDK17)
> count_positives (since JDK 9)
> chacha20 (since JDK 20)
> string indexOfChar (since JDK 9)
>
> Adding the missing vzeroupper to avoid AVX-SSE transition penalties.
@sviswa7 can you remind me where SSE instructions are used which need `vzeroupper`: intrinsics or code which calls it? I thought we replaced almost all places to use new instructions even for scalar operations in code. And almost all intrinsics have AVX variant.
So which transition we are guarding with `vzeroupper`?
-------------
PR Review: https://git.openjdk.org/jdk/pull/16678#pullrequestreview-1733253506
More information about the hotspot-compiler-dev
mailing list