RFR: 8336489: Track scoped accesses in JVMCI compiled code [v6]
duke
duke at openjdk.org
Mon Aug 5 13:51:33 UTC 2024
On Mon, 5 Aug 2024 12:44:04 GMT, Carlo Refice <duke at openjdk.org> wrote:
>> This PR adds JVMCI support to scoped access tracking introduced in #20158.
>>
>> In this PR:
>> * The `Method::is_scoped` flag is now exposed in JVMCI as `HotSpotResolvedJavaMethod.isScoped()`, and serialized to / deserialized from the JVMCI compiled code stream as a boolean flag.
>> * To determine whether a compiled method has a scoped access, we simply check `HotSpotResolvedJavaMethod.isScoped()` returns `true` for the root method or any of the methods that were inlined in the compilation.
>> * The above check is implemented as the method `HotSpotCompiledNMethod.hasScopedAccess()`, instead of as an explicit flag set in a the constructor of `HotSpotCompiledNMethod`. This keeps the change isolated to JVMCI, without requiring coordinated changes to the Graal compiler. No other changes in the compiler are necessary to benefit from the optimization.
>
> Carlo Refice has updated the pull request incrementally with one additional commit since the last revision:
>
> Assert that ResolvedJavaMethod#isScoped returns true at least once
@c-refice
Your change (at version 8b61ab799495a7839eb8551686b89ea5f9fab79e) is now ready to be sponsored by a Committer.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/20256#issuecomment-2269127221
More information about the graal-dev
mailing list