public abstract class OptimizedCallTargetInstrumentation extends CompilationResultBuilder
OptimizedCallTarget.call(Object[])
.asm, codeCache, compilationResult, foreignCalls, frameContext, frameMap, PrintLIRWithAssembly, target
Constructor and Description |
---|
OptimizedCallTargetInstrumentation(CodeCacheProvider codeCache,
ForeignCallsProvider foreignCalls,
FrameMap frameMap,
Assembler asm,
FrameContext frameContext,
CompilationResult compilationResult) |
Modifier and Type | Method and Description |
---|---|
protected static int |
getFieldOffset(String name,
Class<?> declaringClass) |
protected abstract void |
injectTailCallCode(HotSpotVMConfig config,
HotSpotRegistersProvider registers)
Injects code into the verified entry point of that makes a tail-call to the target callee.
|
CompilationResult.Mark |
recordMark(Object id) |
asAddress, asByteAddr, asDoubleAddr, asDoubleConst, asDoubleConstRef, asDoubleConstRef, asFloatAddr, asFloatConst, asFloatConstRef, asFloatConstRef, asIntAddr, asIntConst, asLongAddr, asLongConst, asLongConstRef, asObjectAddr, asObjectConstRef, asShortAddr, blockComment, emit, finish, isSuccessorEdge, recordDataReferenceInCode, recordDataReferenceInCode, recordDirectCall, recordExceptionHandlers, recordImplicitException, recordIndirectCall, recordInfopoint, recordInfopoint, recordInlineDataInCode, reset, setOpCallback, setTotalFrameSize
public OptimizedCallTargetInstrumentation(CodeCacheProvider codeCache, ForeignCallsProvider foreignCalls, FrameMap frameMap, Assembler asm, FrameContext frameContext, CompilationResult compilationResult)
public CompilationResult.Mark recordMark(Object id)
recordMark
in class CompilationResultBuilder
protected static int getFieldOffset(String name, Class<?> declaringClass)
protected abstract void injectTailCallCode(HotSpotVMConfig config, HotSpotRegistersProvider registers)