RFR: 8329597: C2: Intrinsify Reference.clear
Kim Barrett
kbarrett at openjdk.org
Wed Jul 17 18:52:13 UTC 2024
On Mon, 15 Jul 2024 16:09:39 GMT, Kim Barrett <kbarrett at openjdk.org> wrote:
> > Aw, nice usability landmine. I thought C2 barrier set would assert on me if it cannot deliver. Apparently not, [...]
>
> Reference.refersTo has similar issues. See refersToImpl and refersTo0 in both Reference and PhantomReference. I think you should be able to model on those and the intrinsic implementation for refersTo to get what you want.
>
> One additional complication is that Reference.enqueue intentionally calls clear0. If implementing clear similarly to refersTo, then enqueue should be changed to call clearImpl.
I should have read what I was replying to more carefully, rather than focusing on what was further up in the thread.
Looks like you (@shipilev) already spotted the refersTo stuff. But the enqueue => clear0 could have easily been missed,
so perhaps not an entirely unneeded suggestion.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/20139#issuecomment-2231464762
More information about the core-libs-dev
mailing list