RFR: 8315698: Crash when comparing BasicType as int after JDK-8310577 [v2]

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


On Wed, 6 Sep 2023 04:57:05 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.
>
> Daniel Jeliński has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Change CallStub prototype instead

Thanks for the reviews!

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

PR Comment: https://git.openjdk.org/jdk/pull/15568#issuecomment-1709471158


More information about the hotspot-compiler-dev mailing list