RFR: 8343789: Move mutable nmethod data out of CodeCache [v3]
Boris Ulasevich
bulasevich at openjdk.org
Tue Dec 10 22:51:39 UTC 2024
On Mon, 9 Dec 2024 23:14:31 GMT, Dean Long <dlong at openjdk.org> wrote:
>> Boris Ulasevich has updated the pull request incrementally with one additional commit since the last revision:
>>
>> a bit of cleanup and satisfying review suggestions
>
> src/hotspot/cpu/aarch64/macroAssembler_aarch64.hpp line 1419:
>
>> 1417:
>> 1418: void ldr_patchable(Register dest, const Address &const_addr) {
>> 1419: if (CodeCache::contains(const_addr.target())) {
>
> Doesn't this cause us to generate LDR for oops outside the code cache, when what we need is the ADRP below? The caller is still using a PC-relative dummy address.
(written above) in ldr_patchable adrp+ldr path is used.
Code generator encodes ldr to dummy address (real address is stored in oop_Relocation). During relocation, adrp+ldr are patched to a real address. This code only works for UseShenandoahGC and ldr_patchable only uses the adrp+ldr path.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/21276#discussion_r1879024114
More information about the hotspot-compiler-dev
mailing list