> This PR suggests introducing an internal class in `java.base` to simplify the > use of some `MethodHandles.Lookup` operations. > > While the utility of the methods might appear to be limited in classes with > many static `VarHandle`/`MethodHandle` variables, it should be noted that the > class files become smaller and simpler. Here are some examples: > > | Class File | Base [Bytes] | Patch > [Byte] | > | --------------------------------| ------------- | ------------ | > | FutureTask.class | 10,255 | > 10,123 | > | AtomicBoolean.class | 5,364 | > 5,134 | > |AtomicMarkableReference.class | 3,890 | 3,660 | > >  > > The new `MethodHandlesInternal.class` file is of size 1,952 bytes. > > In total for `java.base` we have: > > | Build map "jdk" | Size [Bytes] | > | ---------------| ------------- | > | Base | 5,906,457 | > | Patch | 5,905,487 | > | Delta | 940| > > For 60 billion instances, this represents > 50 TB. > > Tried and passed tier1-3
Per Minborg has updated the pull request incrementally with two additional commits since the last revision: - Update javadoc - Rename utility class ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20972/files - new: https://git.openjdk.org/jdk/pull/20972/files/e2e935b2..7f140322 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20972&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20972&range=02-03 Stats: 82 lines in 31 files changed: 0 ins; 0 del; 82 mod Patch: https://git.openjdk.org/jdk/pull/20972.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20972/head:pull/20972 PR: https://git.openjdk.org/jdk/pull/20972