RFR: 8377339: Implement AOTCacheAccess::get_archived_object using heap roots [v2]

Vladimir Kozlov kvn at openjdk.org
Tue Feb 10 03:35:04 UTC 2026


On Tue, 10 Feb 2026 02:43:32 GMT, Ioi Lam <iklam at openjdk.org> wrote:

>> It depends when you copy oops into AOT cache. It is fine to use this check If you copy oops before we dump AOT code (at the code lines you pointed).
>> 
>> But it is not fine after AOT code is dumped. At the line 1219 we call `AOTCodeCache::close();` which dumps AOT code and deallocates cache.  Code dumping is called from `~AOTCodeCache()` destructor. `AOTCodeCache::is_dumping_code()` will return `false` after that.
>
> The oop copying is done before we dump the AOT code. The new call to `AOTCodeCache::is_dumping_code()` happens before the other call to the same function in aotMetaspace.cpp.
> 
> Eventually, we should change the order so that AOT code is generated before we collect all artifacts (metaspace objects, oops, and code), but this would be a drastic change so we should delay that after initial AOT code JEP is integrated.

Okay. Good.

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

PR Review Comment: https://git.openjdk.org/leyden/pull/108#discussion_r2785610969


More information about the leyden-dev mailing list