public interface HotSpotLIRGenerator extends LIRGeneratorTool
LIRGenerator and LIRGeneratorTool.LIRGeneratorTool.BlockScope, LIRGeneratorTool.CharsetNameDiagnosticLIRGeneratorTool.ZapRegistersAfterInstruction, DiagnosticLIRGeneratorTool.ZapStackArgumentSpaceBeforeInstruction| Modifier and Type | Method and Description |
|---|---|
void |
emitDeoptimizeCaller(DeoptimizationAction action,
DeoptimizationReason reason)
Emits code that jumps to the deopt blob uncommon_trap entry point with
action and
reason. |
void |
emitDeoptimizeWithExceptionInCaller(Value exception)
Emits code that jumps to the deopt blob unpack_with_exception entry point with
exception. |
void |
emitTailcall(Value[] args,
Value address)
Emits an operation to make a tail call.
|
VirtualStackSlot |
getLockSlot(int lockDepth)
Gets a stack slot for a lock at a given lock nesting depth.
|
HotSpotProviders |
getProviders() |
addressAsAllocatableInteger, allocateStackMemory, append, asAllocatable, canInlineConstant, emitAddress, emitArrayCompareTo, emitArrayCopyWithConversion, emitArrayCopyWithConversion, emitArrayEquals, emitArrayEquals, emitArrayEquals, emitArrayEquals, emitArrayEquals, emitArrayEquals, emitArrayIndexOf, emitArrayRegionCompareTo, emitArrayRegionCompareTo, emitAtomicReadAndAdd, emitAtomicReadAndWrite, emitBlackhole, emitByteSwap, emitCacheWriteback, emitCacheWritebackSync, emitCalcStringAttributes, emitCompress, emitConditionalMove, emitConstant, emitConvertNullToZero, emitConvertNullToZero, emitConvertZeroToNull, emitDeoptimize, emitEncodeArray, emitForeignCall, emitHasNegatives, emitIntegerTestMove, emitJavaConstant, emitJump, emitLoadConstant, emitLogicCompareAndSwap, emitMembar, emitMove, emitMove, emitMoveConstant, emitNullCheck, emitPause, emitPrefetchAllocate, emitReadCallerStackPointer, emitReadRegister, emitReadReturnAddress, emitReturn, emitSpeculationFence, emitStringLatin1Inflate, emitStringUTF16Compress, emitTimeStampWithProcid, emitUncompress, emitUnwind, emitValueCompareAndSwap, emitWriteRegister, emitZeroMemory, getArithmetic, getCodeCache, getCurrentBlock, getForeignCalls, getLIRKind, getMaxVectorSize, getMetaAccess, getMoveFactory, getRegisterConfig, getResult, getSpillMoveFactory, mayEmbedConstantLoad, newVariable, target, toRegisterKindcreateBenchmarkCounter, createMultiBenchmarkCounter, createZapArgumentSpace, createZapRegisters, createZapRegisters, createZapRegisters, zapArgumentSpacevoid emitTailcall(Value[] args,
Value address)
args - the arguments of the calladdress - the target address of the callvoid emitDeoptimizeCaller(DeoptimizationAction action,
DeoptimizationReason reason)
action and
reason.void emitDeoptimizeWithExceptionInCaller(Value exception)
exception.exception - VirtualStackSlot getLockSlot(int lockDepth)
HotSpotProviders getProviders()
getProviders in interface LIRGeneratorTool