RFR: 8341594: Use Unsafe to coalesce reads in java.util.zip.ZipUtils [v2]
Eirik Bjørsnøs
eirbjo at openjdk.org
Sun Oct 6 15:51:34 UTC 2024
On Sun, 6 Oct 2024 15:35:44 GMT, Claes Redestad <redestad at openjdk.org> wrote:
>> Actually if we trust the input index to be nonnegative, we can just check our end index for out of bounds too.
>
> Sure, I think the JIT is pretty good at eliminating the (intrinsic) `checkIndex` calls when they are redundant though. Performance with and without these `checkIndex`es are the same in my testing, so we can eat and have the cake on this one.
>
> FWIW I wouldn't mind giving similar treatment to `ByteArray(-LittleEndian)` and avoid the `VarHandles` dependency in those utility classes, but I have no urge to get into the sort of discussions that were spawned in #19616
> Actually if we trust the input index to be nonnegative, we can just check our end index for out of bounds too.
I would not trust that. Perhaps for well-formed ZIP files, but trust me, not all ZIPs are well-formed ;-)
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/21377#discussion_r1789142344
More information about the core-libs-dev
mailing list