RFR: 8364141: Remove LockingMode related code from x86

Axel Boldt-Christmas aboldtch at openjdk.org
Fri Aug 1 06:03:56 UTC 2025


On Wed, 30 Jul 2025 13:17:37 GMT, Fredrik Bredberg <fbredberg at openjdk.org> wrote:

> Since the integration of [JDK-8359437](https://bugs.openjdk.org/browse/JDK-8359437) the `LockingMode` flag can no longer be set by the user, instead it's declared as `const int LockingMode = LM_LIGHTWEIGHT;`. This means that we can now safely remove all `LockingMode` related code from all platforms.
> 
> This PR removes `LockingMode` related code from the **x86** platform.
> 
> When all the `LockingMode` code has been removed from all platforms, we can go on and remove it from shared (non-platform specific) files as well. And finally remove the `LockingMode` variable itself.
> 
> Passes tier1-tier5 with no added problems.

src/hotspot/cpu/x86/c2_MacroAssembler_x86.cpp line 227:

> 225: void C2_MacroAssembler::fast_lock_lightweight(Register obj, Register box, Register rax_reg,
> 226:                                               Register t, Register thread) {
> 227:   assert(box == rbx, "Used for displaced header location");

Where does this RBX requirement come from? Do not recall it being a thing for the lightweight implementation.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/26552#discussion_r2247011594


More information about the hotspot-compiler-dev mailing list