RFR: 8356075: Support Shenandoah GC in JVMCI [v3]
Roman Kennke
rkennke at openjdk.org
Mon May 5 16:58:02 UTC 2025
On Mon, 5 May 2025 16:51:39 GMT, Roman Kennke <rkennke at openjdk.org> wrote:
>> Oh, so this matches `JVMCIRuntime::write_barrier_pre` for G1 (weird place to have it, but oh well).
>>
>> Does Graal need the `Thread*` argument?
>>
>> I think this method is only called when SATB buffer is full. So the performance of this method is likely not affected by getting the current thread down in caller. So I think it would be more straight-forward to sharpen `ShenandoahRuntime::write_ref_field_pre` by dropping `Thread*` and then exporting that. Maybe also under the `SR::write_barrier_pre` name to be even more consistent for everything else.
>>
>> Maybe @JohnTortugo wants to clean up more mess in C2 related to this :)
>
> Graal does not need the Thread* argument, but the runtime code behind write_ref_pre() currently uses it. I agree, it does not look performance critical to pass it through. However, getting rid of it seems to blow the scope of this PR. I'd rather do this as a follow-up.
Actually, I'd probably add the new entry for Graal without the Thread* argument now, and fix the others in a follow-up. Otherwise we need to deal with it on the Graal side again later once we change the entry points.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/25001#discussion_r2073813072
More information about the graal-dev
mailing list