RFR: 8305898: Alternative self-forwarding mechanism [v4]
Roman Kennke
rkennke at openjdk.org
Tue May 9 20:07:41 UTC 2023
On Tue, 9 May 2023 19:14:26 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:
>> Roman Kennke has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains ten commits:
>>
>> - Merge branch 'JDK-8305896' into JDK-8305898
>> - Merge branch 'JDK-8305896' into JDK-8305898
>> - Merge branch 'JDK-8305896' into JDK-8305898
>> - Merge branch 'JDK-8305896' into JDK-8305898
>> - Use forwardee() in forward_to_atomic() method
>> - Merge branch 'JDK-8305896' into JDK-8305898
>> - Merge branch 'JDK-8305896' into JDK-8305898
>> - Replace uses of decode_pointer() with forwardee()
>> - 8305898: Alternative self-forwarding mechanism
>
> src/hotspot/share/oops/oop.inline.hpp line 332:
>
>> 330: return cast_to_oop(this);
>> 331: } else {
>> 332: return cast_to_oop(header.decode_pointer());
>
> I think this path misses the original assert:
>
>
> assert(is_forwarded(), "only decode when actually forwarded");
No, not really. This method exists to support racy access on the mark word. The equivalent of is_forwarded() here is header.is_marked().
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/13779#discussion_r1189077714
More information about the hotspot-dev
mailing list