RFR: 8350118: Simplify the layout access VarHandle
Maurizio Cimadamore
mcimadamore at openjdk.org
Fri Feb 21 14:46:52 UTC 2025
On Fri, 21 Feb 2025 13:49:51 GMT, Chen Liang <liach at openjdk.org> wrote:
> I have disabled them with #, and the status is confirmed by test for access modes. I kept the infra to make future reenabling easy.
Doh - I missed the `#` -- maybe add few more to make that more explicit? (I agree with the approach)
>> src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java line 1556:
>>
>>> 1554:
>>> 1555: @Override
>>> 1556: public VarHandle memorySegmentViewHandle(Class<?> carrier, MemoryLayout enclosing, long alignmentMask, ByteOrder order, boolean fixedOffset, long offset) {
>>
>> When I was playing with the code I kept being confused by the `fixedOffset` parameter name. The reason being that no var handle is really "fixed offset" (all VH take a "base" offset -- and this doesn't change that). What this "fixedOffset" means is really "there's no other (dynamic) offset on top of the base offset". I think calling it "stridedAccess" seems subjectively more evocative (or something like that).
>
> Shouldn't this be called noStride then?
noStride works (I was mostly suggesting that appealing to the concept of "there's a stride or not" might be more useful)
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/23720#discussion_r1965596079
PR Review Comment: https://git.openjdk.org/jdk/pull/23720#discussion_r1965598874
More information about the build-dev
mailing list