CompressedOops and CompressedKlassPointers both used to have a static data member of type NarrowPtrStruct (declared in compressedOops.hpp).
When CompressedKlassPointers was split out into its own file (JDK-8311870), its use of NarrowPtrStruct was removed, hoisting the needed data members directly into CompressedKlassPointers, flattening its structure (and dropping an unused NarrowPtrStruct member for this use).
That left CompressedOoops::_narrow_oop as the sole instance of NarrowPtrStruct. That extra level of structure doesn't provide any benefit, and we can flatten it out here too, rendering NarrowPtrStruct unused and allowing it to be removed.
When CompressedKlassPointers was split out into its own file (
That left CompressedOoops::_narrow_oop as the sole instance of NarrowPtrStruct. That extra level of structure doesn't provide any benefit, and we can flatten it out here too, rendering NarrowPtrStruct unused and allowing it to be removed.
- links to
-
Commit(master) openjdk/jdk/dd498794
-
Review(master) openjdk/jdk/21115