public class AArch64RuntimeCodeInstallerPlatformHelper extends Object implements RuntimeCodeInstaller.RuntimeCodeInstallerPlatformHelper
| Constructor and Description |
|---|
AArch64RuntimeCodeInstallerPlatformHelper() |
| Modifier and Type | Method and Description |
|---|---|
int |
getTrampolineCallSize()
The size for trampoline jumps.
|
int |
insertTrampolineCalls(byte[] compiledBytes,
int initialPos,
Map<Long,Integer> directTargets) |
void |
performCodeSynchronization(CodeInfo codeInfo)
Method to enable platforms to perform any needed operations before code becomes visible.
|
boolean |
targetWithinPCDisplacement(long pcDisplacement)
Checking if the pc displacement is within a signed 28 bit range.
|
public AArch64RuntimeCodeInstallerPlatformHelper()
public int getTrampolineCallSize()
Trampoline jumps are added immediately after the method code, where each trampoline needs 12 bytes. The trampoline jumps reference the 8-byte destination addresses, which are allocated after the trampolines.
getTrampolineCallSize in interface RuntimeCodeInstaller.RuntimeCodeInstallerPlatformHelperpublic boolean targetWithinPCDisplacement(long pcDisplacement)
targetWithinPCDisplacement in interface RuntimeCodeInstaller.RuntimeCodeInstallerPlatformHelperpublic int insertTrampolineCalls(byte[] compiledBytes,
int initialPos,
Map<Long,Integer> directTargets)
insertTrampolineCalls in interface RuntimeCodeInstaller.RuntimeCodeInstallerPlatformHelperpublic void performCodeSynchronization(CodeInfo codeInfo)
RuntimeCodeInstaller.RuntimeCodeInstallerPlatformHelperperformCodeSynchronization in interface RuntimeCodeInstaller.RuntimeCodeInstallerPlatformHelpercodeInfo - the new code to be installed