RFR: 8279651: [vectorapi] Implement the missing intrinsics for casting from integrals on x64 [v8]

Vladimir Ivanov vlivanov at openjdk.java.net
Tue Jan 18 16:16:35 UTC 2022


On Tue, 18 Jan 2022 15:54:31 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:

>> Good idea, do you know how to properly save the state of a `xmm` register? Currently I can only see using x86_32 approach which does not need to touch the `xmm` registers.
>
> Another option is to pass vector value in register (use vector calling conventions in the stub, e.g. `xmm0`; take a look at `CallLeafVector` used for SVML stubs). It would require fixed location for the vector argument. You can achieve that with additional temporary operand (`rxmm0 tmp`).

BTW I don't fully understand why you need a special case for x86-32. Considering you rely on x87, I assume your intention is to support pre-SSE2 hardware, but vector casts already require AVX. Why can't you share the implementation with x86-64?

-------------

PR: https://git.openjdk.java.net/jdk/pull/7002


More information about the hotspot-compiler-dev mailing list