RFR: 8289743: AArch64: Clean up patching logic [v13]
Andrew Haley
aph at openjdk.org
Fri Jul 22 08:12:04 UTC 2022
On Thu, 21 Jul 2022 20:16:11 GMT, Dean Long <dlong at openjdk.org> wrote:
> > offset = offset << (64-21) >> (64-21);
>
> My guess is that ADRP is being used for a target address that is too far away. The added line above fixes up the high bits so that the assert in spatch() won't fire, hiding the problem:
>
> > 239 guarantee (chk == -1 || chk == 0, "Field too big for insn");
I've reproduced the problem and I'm now looking at the cleanest way to fix it.
-------------
PR: https://git.openjdk.org/jdk/pull/9398
More information about the hotspot-dev
mailing list