RFR: 8365858: FilteredJavaFieldStream is unnecessary [v2]

Paul Hübner phubner at openjdk.org
Tue Sep 16 09:35:02 UTC 2025


> Hi all,
> 
> `FilteredJavaFieldStream` purely exists to hide the field `constantPoolOop` in `jdk.internal.reflect.ConstantPool`. This PR:
> 1) refactors `constantPoolOop` to be a hidden VM injected field `vmholder` (name to be consistent with other similar cases),
> 2) removes `FilteredJavaFieldStream` entirely, and
> 3) updates code previously relying on `FilteredJavaFieldStream` to use `JavaFieldStream` instead.
> 
> Testing: Oracle tiers 1-3.

Paul Hübner has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains seven commits:

 - Merge branch 'master' into JDK-8365858
 - Merge branch 'master' into JDK-8365858
 - Fix typo.
 - Refactor to purely use injected fields.
 - Remove FilteredJavaFieldStream and usages.
 - Remove constantPoolOop from Java code.
 - Make constantPoolOop a hidden vmholder field.

-------------

Changes: https://git.openjdk.org/jdk/pull/27209/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=27209&range=01
  Stats: 194 lines in 9 files changed: 9 ins; 166 del; 19 mod
  Patch: https://git.openjdk.org/jdk/pull/27209.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/27209/head:pull/27209

PR: https://git.openjdk.org/jdk/pull/27209


More information about the hotspot-runtime-dev mailing list