RFR(M): 8145521: Use trampolines for i2i and i2c entries in Methods that are stored in CDS archive

Ioi Lam ioi.lam at oracle.com
Sun Feb 21 20:06:31 UTC 2016


Hi Andrew,

We don't need the trampoline to be exactly 16 bytes, so as long as it 
fits under 16 bytes, we're fine.

We picked a fixed size (16 bytes in aarch64) so we have enough space in 
the worst case, since the branch destination could potentially be picked 
randomly by the OS.

Thanks
- Ioi

On 2/21/16 2:24 AM, Andrew Haley wrote:
> This might be wrong for AArch64: mov(Reg, address) generates a
> variable-length encoding so the size of the trampoline isn't
> necessarily 16 bytes.  It will always fit in 16 bytes, though.
>
> If you need the trampoline always to be 16 bytes exactly, use
> movptr(Reg, address).
>
> Andrew.



More information about the hotspot-runtime-dev mailing list