RFR: 8329597: C2: Intrinsify Reference.clear [v6]
Kim Barrett
kbarrett at openjdk.org
Tue Oct 1 01:37:45 UTC 2024
On Mon, 30 Sep 2024 16:59:16 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:
>> [JDK-8240696](https://bugs.openjdk.org/browse/JDK-8240696) added the native method for `Reference.clear`. The original patch skipped intrinsification of this method, because we thought `Reference.clear` is not on a performance sensitive path. However, it shows up prominently on simple benchmarks that touch e.g. `ThreadLocal` cleanups. See the bug for an example profile with `RRWL` benchmarks.
>>
>> We need to know the actual oop strongness/weakness before we call into C2 Access API, this work models this after existing code for `refersTo0` intrinsics. C2 Access also need a support for `AS_NO_KEEPALIVE` for stores.
>>
>> Additional testing:
>> - [ ] Linux x86_64 server fastdebug, `all`
>> - [ ] Linux AArch64 server fastdebug, `all`
>
> Aleksey Shipilev has updated the pull request incrementally with one additional commit since the last revision:
>
> Also dispatch to slow-path on other arches
Removing my "Request changes" as request has been satisfied.
I've only really looked at the changes in java.base, which look fine. I've skimmed some
of the compiler code, but don't feel qualified to properly review it. So don't count or
wait for me as a reviewer.
-------------
PR Review: https://git.openjdk.org/jdk/pull/20139#pullrequestreview-2338962626
More information about the hotspot-dev
mailing list