RFR: 8365256: RelocIterator should use indexes instead of pointers

Vladimir Kozlov kvn at openjdk.org
Mon Aug 11 16:07:13 UTC 2025


On Thu, 31 Jul 2025 06:17:24 GMT, Johan Sjölen <jsjolen at openjdk.org> wrote:

> Hi,
> 
> This PR replaces the `current` and `end` pointers with a `base` pointer alongside a `current` index and a `len`. This allows us to have `-1` as the initial value for current, while retaining `nullptr` as the 'dead' value for `_mutable_data`.
> 
> Performance testing shows no difference/performance improvements on DaCapo Linux x64. I don't think that these are actual improvements, but at least there are no clear regressions.
> 
> Testing: GHA

src/hotspot/share/code/codeBlob.cpp line 211:

> 209:   _mutable_data_size = 0;
> 210:   delete _oop_maps;
> 211:   _oop_maps = nullptr;

You missed `_relocation_size = 0;`

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

PR Review Comment: https://git.openjdk.org/jdk/pull/26569#discussion_r2267249556


More information about the hotspot-compiler-dev mailing list