[lworld+vector] RFR: 8319972: [lworld+vector] Enable intrinsification of Unsafe.finishPrivateBuffer. [v4]
Xiaohong Gong
xgong at openjdk.org
Wed Nov 22 09:09:29 UTC 2023
On Wed, 22 Nov 2023 07:39:13 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:
>> Any feedback on this please?
>
> The whole idea is to avoid scalarization for value objects in laval state and not construct InlineTypeNode till we encounter a finishPrivateBuffer. A value object is transitioned into larval state to make it mutable, since Unsafe.put* APIs do not modify the JVM state hence to be safe it's better to keep value objects as oops b/w make and finish private buffer, patch also disables re-materialization of InlineTypeNode from updated memory state in Unsafe.put* inline expanders.
Yes, I understand your intention. And it makes sense to me. My question is whether we can keep the InlineType with a larval state before, and forbiting the scalarization for it between make/finish private buffer. Changing `InlineType` totally to the oop buffer looks too heavy to me.
-------------
PR Review Comment: https://git.openjdk.org/valhalla/pull/952#discussion_r1401720310
More information about the valhalla-dev
mailing list