Integrated: 8315698: Crash when comparing BasicType as int after JDK-8310577

Daniel Jeliński djelinski at openjdk.org
Thu Sep 7 04:55:47 UTC 2023


On Tue, 5 Sep 2023 15:06:48 GMT, Daniel Jeliński <djelinski at openjdk.org> wrote:

> Please review this patch that fixes the handling of result type parameter in `call_stub` on x64.
> 
> Since 5a82fa3bb278b5b80b9ede0619f364fe13cdbede the parameter only needs one byte, and Windows ABI does not require the caller to clear the remaining bytes of the parameter register.
> 
> Clang clears the remainder of the register in release mode, but does not clear it in debug mode.
> MSVC... [It's complicated](https://godbolt.org/z/6YEcMcM13). Apparently MSVC-generated code clears the high bytes of the parameter register here.
> 
> This patch fixes the crashes with clang. (MSVC) Windows-x64 and (gcc) Linux-x64 builds still work, tiers 1-3 report no new failures.

This pull request has now been integrated.

Changeset: ab28300a
Author:    Daniel Jeliński <djelinski at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/ab28300a42a0dadda76880a51a4b4ac6f39ad794
Stats:     11 lines in 2 files changed: 10 ins; 0 del; 1 mod

8315698: Crash when comparing BasicType as int after JDK-8310577

Reviewed-by: dlong, kvn, coleenp

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

PR: https://git.openjdk.org/jdk/pull/15568


More information about the hotspot-compiler-dev mailing list