On Sat, 24 Aug 2024 10:49:56 GMT, Eirik Bjørsnøs <[email protected]> wrote:
> Please review this refactoring PR which moves the `ZipEntry.flags` field to > `ZipOutputStream.XEntry`. > > Moving this field will save four bytes from the `ZipEntry` object size and > also saves an unneccessary read in `ZipFile.getZipEntry`. > > Testing: > > This PR is a refactoring of existing code and does not update any tests. I > added the label `noreg-cleanup` to the JBS issue. > > The following runs clean: > > > make test TEST="test/jdk/java/util/zip" > make test TEST="test/jdk/java/util/jar" > > > Performance: > > The JMH benchmark `java.util.zip.ZipFileGetEntry.getEntryHit` show a small > but consistent improvement (2-3%). Sorry, the renaming was just an accident, It was “flags” in my head, but that was wrong. Will revert the rename once I’m in front of a keyboard again in a few days. The reason I’m looking at this is that ZipEntry is 88 bytes, and the allocation cost is significant when iterating entries. So it would be beneficial to move unused or optional parts out of the common lookup/enumeration code paths. This seemed like a small but obvious win. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20702#issuecomment-2308965369
