public class JVMVisitor extends IRVisitor
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
BLOCK_ARG_NAME |
static com.headius.invokebinder.Signature |
CLOSURE_SIGNATURE |
static java.lang.String |
DYNAMIC_SCOPE |
static java.lang.String |
SELF_BLOCK_NAME |
static java.lang.String |
SUPER_NAME_NAME |
GlobalVariable, Instr, IRException, Label, OneFixnumArgNoBlockCallInstr, OneFloatArgNoBlockCallInstr, OneOperandArgNoBlockCallInstr, RaiseArgumentErrorInstr, ZeroOperandArgNoBlockCallInstrpublic static final java.lang.String DYNAMIC_SCOPE
public static final java.lang.String BLOCK_ARG_NAME
public static final java.lang.String SELF_BLOCK_NAME
public static final java.lang.String SUPER_NAME_NAME
public static final com.headius.invokebinder.Signature CLOSURE_SIGNATURE
public static JVMVisitor newForJIT(Ruby runtime)
public static JVMVisitor newForAOT(Ruby runtime)
public BytecodeMode getBytecodeMode()
public java.lang.Class compile(IRScope scope, ClassDefiningClassLoader jrubyClassLoader)
public byte[] compileToBytecode(IRScope scope, JVMVisitorMethodContext context)
public java.lang.Class defineFromBytecode(IRScope scope, byte[] code, ClassDefiningClassLoader jrubyClassLoader)
public java.lang.Class defineScriptFromBytecode(IRScope scope, byte[] code, ClassDefiningClassLoader jrubyClassLoader)
public java.lang.Class defineFromBytecode(IRScope scope, byte[] code, ClassDefiningClassLoader jrubyClassLoader, boolean setScopes)
public byte[] code()
protected void codegenScope(IRScope scope, JVMVisitorMethodContext context)
protected void emitScope(IRScope scope, java.lang.String name, com.headius.invokebinder.Signature signature, boolean specificArity, boolean print)
protected void emitVarargsMethodWrapper(IRScope scope, java.lang.String variableName, java.lang.String specificName, com.headius.invokebinder.Signature variableSignature, com.headius.invokebinder.Signature specificSignature)
protected static final com.headius.invokebinder.Signature signatureFor(IRScope method, boolean aritySplit)
protected void emitScriptBody(IRScriptBody script)
protected void emitMethod(IRMethod method, JVMVisitorMethodContext context)
protected void emitMethodJIT(IRMethod method, JVMVisitorMethodContext context)
protected void emitBlockJIT(IRClosure closure, JVMVisitorMethodContext context)
protected org.objectweb.asm.Handle emitModuleBodyJIT(IRModuleBody method)
protected org.objectweb.asm.Handle emitClosure(IRClosure closure, boolean print)
protected org.objectweb.asm.Handle emitModuleBody(IRModuleBody method)
public void AliasInstr(AliasInstr aliasInstr)
AliasInstr in class IRVisitorpublic void ArrayDerefInstr(ArrayDerefInstr arrayderefinstr)
ArrayDerefInstr in class IRVisitorpublic void AsStringInstr(AsStringInstr asstring)
AsStringInstr in class IRVisitorpublic void AttrAssignInstr(AttrAssignInstr attrAssignInstr)
AttrAssignInstr in class IRVisitorpublic void BFalseInstr(BFalseInstr bFalseInstr)
BFalseInstr in class IRVisitorpublic void BlockGivenInstr(BlockGivenInstr blockGivenInstr)
BlockGivenInstr in class IRVisitorpublic void BoxFloatInstr(BoxFloatInstr instr)
BoxFloatInstr in class IRVisitorpublic void BoxFixnumInstr(BoxFixnumInstr instr)
BoxFixnumInstr in class IRVisitorpublic void BoxBooleanInstr(BoxBooleanInstr instr)
BoxBooleanInstr in class IRVisitorpublic void UnboxFloatInstr(UnboxFloatInstr instr)
UnboxFloatInstr in class IRVisitorpublic void UnboxFixnumInstr(UnboxFixnumInstr instr)
UnboxFixnumInstr in class IRVisitorpublic void UnboxBooleanInstr(UnboxBooleanInstr instr)
UnboxBooleanInstr in class IRVisitorpublic void BreakInstr(BreakInstr breakInstr)
BreakInstr in class IRVisitorpublic void BSwitchInstr(BSwitchInstr bswitchinstr)
BSwitchInstr in class IRVisitorpublic void BTrueInstr(BTrueInstr btrueinstr)
BTrueInstr in class IRVisitorpublic void BUndefInstr(BUndefInstr bundefinstr)
BUndefInstr in class IRVisitorpublic void BuildBackrefInstr(BuildBackrefInstr instr)
BuildBackrefInstr in class IRVisitorpublic void BuildCompoundArrayInstr(BuildCompoundArrayInstr instr)
BuildCompoundArrayInstr in class IRVisitorpublic void BuildCompoundStringInstr(BuildCompoundStringInstr compoundstring)
BuildCompoundStringInstr in class IRVisitorpublic void BuildDynRegExpInstr(BuildDynRegExpInstr instr)
BuildDynRegExpInstr in class IRVisitorpublic void BuildRangeInstr(BuildRangeInstr instr)
BuildRangeInstr in class IRVisitorpublic void BuildSplatInstr(BuildSplatInstr instr)
BuildSplatInstr in class IRVisitorpublic void CheckArgsArrayArityInstr(CheckArgsArrayArityInstr checkargsarrayarityinstr)
CheckArgsArrayArityInstr in class IRVisitorpublic void CheckArityInstr(CheckArityInstr checkarityinstr)
CheckArityInstr in class IRVisitorpublic void CheckForLJEInstr(CheckForLJEInstr checkForljeinstr)
CheckForLJEInstr in class IRVisitorpublic void ClassSuperInstr(ClassSuperInstr classsuperinstr)
ClassSuperInstr in class IRVisitorpublic void DefineClassInstr(DefineClassInstr defineclassinstr)
DefineClassInstr in class IRVisitorpublic void DefineClassMethodInstr(DefineClassMethodInstr defineclassmethodinstr)
DefineClassMethodInstr in class IRVisitorpublic void DefineInstanceMethodInstr(DefineInstanceMethodInstr defineinstancemethodinstr)
DefineInstanceMethodInstr in class IRVisitorpublic void DefineMetaClassInstr(DefineMetaClassInstr definemetaclassinstr)
DefineMetaClassInstr in class IRVisitorpublic void DefineModuleInstr(DefineModuleInstr definemoduleinstr)
DefineModuleInstr in class IRVisitorpublic void ExceptionRegionEndMarkerInstr(ExceptionRegionEndMarkerInstr exceptionregionendmarkerinstr)
ExceptionRegionEndMarkerInstr in class IRVisitorpublic void ExceptionRegionStartMarkerInstr(ExceptionRegionStartMarkerInstr exceptionregionstartmarkerinstr)
ExceptionRegionStartMarkerInstr in class IRVisitorpublic void GetClassVarContainerModuleInstr(GetClassVarContainerModuleInstr getclassvarcontainermoduleinstr)
GetClassVarContainerModuleInstr in class IRVisitorpublic void GetClassVariableInstr(GetClassVariableInstr getclassvariableinstr)
GetClassVariableInstr in class IRVisitorpublic void GetFieldInstr(GetFieldInstr getfieldinstr)
GetFieldInstr in class IRVisitorpublic void GetGlobalVariableInstr(GetGlobalVariableInstr getglobalvariableinstr)
GetGlobalVariableInstr in class IRVisitorpublic void GVarAliasInstr(GVarAliasInstr gvaraliasinstr)
GVarAliasInstr in class IRVisitorpublic void InheritanceSearchConstInstr(InheritanceSearchConstInstr inheritancesearchconstinstr)
InheritanceSearchConstInstr in class IRVisitorpublic void InstanceSuperInstr(InstanceSuperInstr instancesuperinstr)
InstanceSuperInstr in class IRVisitorpublic void LabelInstr(LabelInstr labelinstr)
LabelInstr in class IRVisitorpublic void LexicalSearchConstInstr(LexicalSearchConstInstr lexicalsearchconstinstr)
LexicalSearchConstInstr in class IRVisitorpublic void LineNumberInstr(LineNumberInstr linenumberinstr)
LineNumberInstr in class IRVisitorpublic void LoadLocalVarInstr(LoadLocalVarInstr loadlocalvarinstr)
LoadLocalVarInstr in class IRVisitorpublic void LoadImplicitClosure(LoadImplicitClosureInstr loadimplicitclosureinstr)
LoadImplicitClosure in class IRVisitorpublic void LoadFrameClosure(LoadFrameClosureInstr loadframeclosureinstr)
LoadFrameClosure in class IRVisitorpublic void LoadBlockImplicitClosure(LoadBlockImplicitClosureInstr loadblockimplicitclosureinstr)
LoadBlockImplicitClosure in class IRVisitorpublic void MatchInstr(MatchInstr matchInstr)
MatchInstr in class IRVisitorpublic void ModuleVersionGuardInstr(ModuleVersionGuardInstr moduleversionguardinstr)
ModuleVersionGuardInstr in class IRVisitorpublic void NoResultCallInstr(NoResultCallInstr noResultCallInstr)
NoResultCallInstr in class IRVisitorpublic void oneFixnumArgNoBlockCallInstr(OneFixnumArgNoBlockCallInstr oneFixnumArgNoBlockCallInstr)
public void oneFloatArgNoBlockCallInstr(OneFloatArgNoBlockCallInstr oneFloatArgNoBlockCallInstr)
public void OptArgMultipleAsgnInstr(OptArgMultipleAsgnInstr optargmultipleasgninstr)
OptArgMultipleAsgnInstr in class IRVisitorpublic void PopBindingInstr(PopBindingInstr popbindinginstr)
PopBindingInstr in class IRVisitorpublic void PopBlockFrameInstr(PopBlockFrameInstr instr)
PopBlockFrameInstr in class IRVisitorpublic void PopMethodFrameInstr(PopMethodFrameInstr popframeinstr)
PopMethodFrameInstr in class IRVisitorpublic void PopBackrefFrameInstr(PopBackrefFrameInstr popframeinstr)
PopBackrefFrameInstr in class IRVisitorpublic void PrepareBlockArgsInstr(PrepareBlockArgsInstr instr)
PrepareBlockArgsInstr in class IRVisitorpublic void PrepareFixedBlockArgsInstr(PrepareFixedBlockArgsInstr instr)
PrepareFixedBlockArgsInstr in class IRVisitorpublic void PrepareSingleBlockArgInstr(PrepareSingleBlockArgInstr instr)
PrepareSingleBlockArgInstr in class IRVisitorpublic void PrepareNoBlockArgsInstr(PrepareNoBlockArgsInstr instr)
PrepareNoBlockArgsInstr in class IRVisitorpublic void ProcessModuleBodyInstr(ProcessModuleBodyInstr processmodulebodyinstr)
ProcessModuleBodyInstr in class IRVisitorpublic void PushBlockBindingInstr(PushBlockBindingInstr instr)
PushBlockBindingInstr in class IRVisitorpublic void PushBlockFrameInstr(PushBlockFrameInstr instr)
PushBlockFrameInstr in class IRVisitorpublic void PushMethodBindingInstr(PushMethodBindingInstr pushbindinginstr)
PushMethodBindingInstr in class IRVisitorpublic void RaiseRequiredKeywordArgumentErrorInstr(RaiseRequiredKeywordArgumentError instr)
RaiseRequiredKeywordArgumentErrorInstr in class IRVisitorpublic void PushMethodFrameInstr(PushMethodFrameInstr pushframeinstr)
PushMethodFrameInstr in class IRVisitorpublic void PushBackrefFrameInstr(PushBackrefFrameInstr pushframeinstr)
PushBackrefFrameInstr in class IRVisitorpublic void PutClassVariableInstr(PutClassVariableInstr putclassvariableinstr)
PutClassVariableInstr in class IRVisitorpublic void PutConstInstr(PutConstInstr putconstinstr)
PutConstInstr in class IRVisitorpublic void PutFieldInstr(PutFieldInstr putfieldinstr)
PutFieldInstr in class IRVisitorpublic void PutGlobalVarInstr(PutGlobalVarInstr putglobalvarinstr)
PutGlobalVarInstr in class IRVisitorpublic void ReifyClosureInstr(ReifyClosureInstr reifyclosureinstr)
ReifyClosureInstr in class IRVisitorpublic void ReceiveRubyExceptionInstr(ReceiveRubyExceptionInstr receiveexceptioninstr)
ReceiveRubyExceptionInstr in class IRVisitorpublic void ReceiveJRubyExceptionInstr(ReceiveJRubyExceptionInstr receiveexceptioninstr)
ReceiveJRubyExceptionInstr in class IRVisitorpublic void ReceiveKeywordArgInstr(ReceiveKeywordArgInstr instr)
ReceiveKeywordArgInstr in class IRVisitorpublic void ReceiveKeywordRestArgInstr(ReceiveKeywordRestArgInstr instr)
ReceiveKeywordRestArgInstr in class IRVisitorpublic void ReceiveOptArgInstr(ReceiveOptArgInstr instr)
ReceiveOptArgInstr in class IRVisitorpublic void ReceivePreReqdArgInstr(ReceivePreReqdArgInstr instr)
ReceivePreReqdArgInstr in class IRVisitorpublic void ReceivePostReqdArgInstr(ReceivePostReqdArgInstr instr)
ReceivePostReqdArgInstr in class IRVisitorpublic void ReceiveRestArgInstr(ReceiveRestArgInstr instr)
ReceiveRestArgInstr in class IRVisitorpublic void ReceiveSelfInstr(ReceiveSelfInstr receiveselfinstr)
ReceiveSelfInstr in class IRVisitorpublic void RecordEndBlockInstr(RecordEndBlockInstr recordEndBlockInstr)
RecordEndBlockInstr in class IRVisitorpublic void ReqdArgMultipleAsgnInstr(ReqdArgMultipleAsgnInstr reqdargmultipleasgninstr)
ReqdArgMultipleAsgnInstr in class IRVisitorpublic void RescueEQQInstr(RescueEQQInstr rescueeqqinstr)
RescueEQQInstr in class IRVisitorpublic void RestArgMultipleAsgnInstr(RestArgMultipleAsgnInstr restargmultipleasgninstr)
RestArgMultipleAsgnInstr in class IRVisitorpublic void RestoreBindingVisibilityInstr(RestoreBindingVisibilityInstr instr)
RestoreBindingVisibilityInstr in class IRVisitorpublic void ReturnOrRethrowSavedExcInstr(ReturnOrRethrowSavedExcInstr instr)
ReturnOrRethrowSavedExcInstr in class IRVisitorpublic void RuntimeHelperCall(RuntimeHelperCall runtimehelpercall)
RuntimeHelperCall in class IRVisitorpublic void SaveBindingVisibilityInstr(SaveBindingVisibilityInstr instr)
SaveBindingVisibilityInstr in class IRVisitorpublic void ToggleBacktraceInstr(ToggleBacktraceInstr instr)
ToggleBacktraceInstr in class IRVisitorpublic void NonlocalReturnInstr(NonlocalReturnInstr returninstr)
NonlocalReturnInstr in class IRVisitorpublic void ReturnInstr(ReturnInstr returninstr)
ReturnInstr in class IRVisitorpublic void SearchConstInstr(SearchConstInstr searchconstinstr)
SearchConstInstr in class IRVisitorpublic void SearchModuleForConstInstr(SearchModuleForConstInstr instr)
SearchModuleForConstInstr in class IRVisitorpublic void SetCapturedVarInstr(SetCapturedVarInstr instr)
SetCapturedVarInstr in class IRVisitorpublic void StoreLocalVarInstr(StoreLocalVarInstr storelocalvarinstr)
StoreLocalVarInstr in class IRVisitorpublic void ThreadPollInstr(ThreadPollInstr threadpollinstr)
ThreadPollInstr in class IRVisitorpublic void ThrowExceptionInstr(ThrowExceptionInstr throwexceptioninstr)
ThrowExceptionInstr in class IRVisitorpublic void ToAryInstr(ToAryInstr toaryinstr)
ToAryInstr in class IRVisitorpublic void TraceInstr(TraceInstr traceInstr)
TraceInstr in class IRVisitorpublic void UndefMethodInstr(UndefMethodInstr undefmethodinstr)
UndefMethodInstr in class IRVisitorpublic void UnresolvedSuperInstr(UnresolvedSuperInstr unresolvedsuperinstr)
UnresolvedSuperInstr in class IRVisitorpublic void UpdateBlockExecutionStateInstr(UpdateBlockExecutionStateInstr instr)
UpdateBlockExecutionStateInstr in class IRVisitorpublic void YieldInstr(YieldInstr yieldinstr)
YieldInstr in class IRVisitorpublic void ZSuperInstr(ZSuperInstr zsuperinstr)
ZSuperInstr in class IRVisitorpublic void GetErrorInfoInstr(GetErrorInfoInstr geterrorinfoinstr)
GetErrorInfoInstr in class IRVisitorpublic void RestoreErrorInfoInstr(RestoreErrorInfoInstr restoreerrorinfoinstr)
RestoreErrorInfoInstr in class IRVisitorpublic void BuildLambdaInstr(BuildLambdaInstr buildlambdainstr)
BuildLambdaInstr in class IRVisitorpublic void GetEncodingInstr(GetEncodingInstr getencodinginstr)
GetEncodingInstr in class IRVisitorpublic void UnboxedBoolean(UnboxedBoolean bool)
UnboxedBoolean in class IRVisitorpublic void ClosureLocalVariable(ClosureLocalVariable closurelocalvariable)
ClosureLocalVariable in class IRVisitorpublic void CurrentScope(CurrentScope currentscope)
CurrentScope in class IRVisitorpublic void DynamicSymbol(DynamicSymbol dynamicsymbol)
DynamicSymbol in class IRVisitorpublic void FrozenString(FrozenString frozen)
FrozenString in class IRVisitorpublic void UnboxedFixnum(UnboxedFixnum fixnum)
UnboxedFixnum in class IRVisitorpublic void UnboxedFloat(UnboxedFloat flote)
UnboxedFloat in class IRVisitorpublic void LocalVariable(LocalVariable localvariable)
LocalVariable in class IRVisitorpublic void ObjectClass(ObjectClass objectclass)
ObjectClass in class IRVisitorpublic void ScopeModule(ScopeModule scopemodule)
ScopeModule in class IRVisitorpublic void StandardError(StandardError standarderror)
StandardError in class IRVisitorpublic void MutableString(MutableString mutablestring)
MutableString in class IRVisitorpublic void SymbolProc(SymbolProc symbolproc)
SymbolProc in class IRVisitorpublic void TemporaryVariable(TemporaryVariable temporaryvariable)
TemporaryVariable in class IRVisitorpublic void TemporaryLocalVariable(TemporaryLocalVariable temporarylocalvariable)
TemporaryLocalVariable in class IRVisitorpublic void TemporaryFloatVariable(TemporaryFloatVariable temporaryfloatvariable)
TemporaryFloatVariable in class IRVisitorpublic void TemporaryFixnumVariable(TemporaryFixnumVariable temporaryfixnumvariable)
TemporaryFixnumVariable in class IRVisitorpublic void TemporaryBooleanVariable(TemporaryBooleanVariable temporarybooleanvariable)
TemporaryBooleanVariable in class IRVisitorpublic void UndefinedValue(UndefinedValue undefinedvalue)
UndefinedValue in class IRVisitorpublic void UnexecutableNil(UnexecutableNil unexecutablenil)
UnexecutableNil in class IRVisitorpublic void WrappedIRClosure(WrappedIRClosure wrappedirclosure)
WrappedIRClosure in class IRVisitorCopyright © 2001-2022 JRuby. All Rights Reserved.