RFR: 8329726: Use non-short forward jumps in lightweight locking [v2]
Tobias Hartmann
thartmann at openjdk.org
Mon Apr 8 05:09:08 UTC 2024
On Fri, 5 Apr 2024 16:05:23 GMT, Roman Kennke <rkennke at openjdk.org> wrote:
>> This turns a few short-jumps to long-jumps in x86 lightweight locking code paths. When running with -XX:+ShowMessageBoxOnError, MA::stop() generates more code and jccb is not sufficient to address this.
>>
>> Two of the jccb are in ASSERT path anyway. However, another is also in a product path. We *could* generate jccb or jcc conditionally on ShowMessageBoxOnError, however, I don't think it is worth the trouble. WDYT?
>>
>> Unfortunately, I could not make a simple test-case, because ShowMessageBoxOnError stops and waits on error, which would make jtreg time-out.
>>
>> Testing:
>> - [x] manual test with dacapo as provided in the bug report
>> - [ ] tier1
>
> Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:
>
> Shuffle code to preserve short-jump on non-assert paths
> Unfortunately, I could not make a simple test-case, because ShowMessageBoxOnError stops and waits on error, which would make jtreg time-out.
Although a time out is a bit of a confusing failure mode for the test, I think it would be better than no test at all, right?
-------------
PR Comment: https://git.openjdk.org/jdk/pull/18657#issuecomment-2041871538
More information about the hotspot-compiler-dev
mailing list