Integrated: 8344010: RISC-V: Zacas do not work with LW locking

Robbin Ehn rehn at openjdk.org
Wed Nov 20 12:08:20 UTC 2024


On Fri, 15 Nov 2024 13:01:37 GMT, Robbin Ehn <rehn at openjdk.org> wrote:

> Hi all, please consider.
> 
> Light weight locking fails:
> - We need to add cas acquire.
> - Register _result_ may shadow _new_val_ (same register).
>   (NOTE this second item can effect many other cases, unclear)
> 
> As the code becomes much cleaner by calling amocas_d/w directly I removed the aliases.
> Which fixes the first issue with cas acquire.
> 
> By using t0 instead of _result_ we fix the other issue.
> 
> This is a short bugfix, there are so many dragons here that I do not want to address them while fixing the bug.
> There are also several performance optimizations we can do here, specially for LR/SC case.
> So I'll do a couple of more iterations of this code in seperate PR's.
> 
> Testing a bunch of local cherry-picked tests which failed.
> I'll start tier1 over the weekend.
> 
> Thanks, Robbin

This pull request has now been integrated.

Changeset: ea7e722c
Author:    Robbin Ehn <rehn at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/ea7e722ca04752f0b58bf98e0a1907c015644fb5
Stats:     104 lines in 2 files changed: 17 ins; 79 del; 8 mod

8344010: RISC-V: Zacas do not work with LW locking

Reviewed-by: fyang, mli

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

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


More information about the hotspot-dev mailing list