RFR: 8308469: [PPC64] Implement alternative fast-locking scheme [v3]

Lutz Schmidt lucy at openjdk.org
Thu Jun 1 16:04:07 UTC 2023


On Fri, 26 May 2023 11:02:32 GMT, Martin Doerr <mdoerr at openjdk.org> wrote:

>> New alternative fast-locking scheme for PPC64. Mostly implemented like on other platforms.
>> Differences (also explained by comments in code):
>> - Not using C2HandleAnonOMOwnerStub because the C2 code is reused for native wrappers.
>> - Implemented a helper function `MacroAssembler::atomically_flip_locked_state` which makes it much easier to implement fast_lock/unlock for PPC64 (mainly because of register constraints in C1).
>> - Using acquire/release barriers only for locking/unlocking.
>> 
>> I have changed the C2 code to use ConditionRegister CR0 which fits better to the new locking code. Therefore, I have adapted the other modes to work with that, too.
>> Note that we don't support RTM with new locking modes. That feature will probably get removed in a future JDK version. (Already unsupported with Power10.)
>
> Martin Doerr has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Remove ObjectMonitor::ANONYMOUS_OWNER handling from fast path. We take the slow path instead.

LGTM.
I tried hard but could not find anything to complain about.

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

Marked as reviewed by lucy (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/14069#pullrequestreview-1455826263


More information about the hotspot-dev mailing list