public class org.jruby.ir.instructions.RuntimeHelperCall extends org.jruby.ir.instructions.NOperandResultBaseInstr
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.ir.instructions.RuntimeHelperCall
super_class: org.jruby.ir.instructions.NOperandResultBaseInstr
{
org.jruby.ir.instructions.RuntimeHelperCall$Methods helperMethod;
descriptor: Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
flags: (0x0000)
private static volatile int[] $SWITCH_TABLE$org$jruby$ir$instructions$RuntimeHelperCall$Methods;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
public void <init>(org.jruby.ir.operands.Variable, org.jruby.ir.instructions.RuntimeHelperCall$Methods, org.jruby.ir.operands.Operand[]);
descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getstatic org.jruby.ir.Operation.RUNTIME_HELPER:Lorg/jruby/ir/Operation;
aload 1
aload 3
invokespecial org.jruby.ir.instructions.NOperandResultBaseInstr.<init>:(Lorg/jruby/ir/Operation;Lorg/jruby/ir/operands/Variable;[Lorg/jruby/ir/operands/Operand;)V
1: aload 0
aload 2
putfield org.jruby.ir.instructions.RuntimeHelperCall.helperMethod:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/ir/instructions/RuntimeHelperCall;
0 3 1 result Lorg/jruby/ir/operands/Variable;
0 3 2 helperMethod Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
0 3 3 args [Lorg/jruby/ir/operands/Operand;
MethodParameters:
Name Flags
result
helperMethod
args
public org.jruby.ir.operands.Operand[] getArgs();
descriptor: ()[Lorg/jruby/ir/operands/Operand;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall.getOperands:()[Lorg/jruby/ir/operands/Operand;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/ir/instructions/RuntimeHelperCall;
public org.jruby.ir.instructions.RuntimeHelperCall$Methods getHelperMethod();
descriptor: ()Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.ir.instructions.RuntimeHelperCall.helperMethod:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/ir/instructions/RuntimeHelperCall;
public boolean computeScopeFlags(org.jruby.ir.IRScope);
descriptor: (Lorg/jruby/ir/IRScope;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: aload 0
getfield org.jruby.ir.instructions.RuntimeHelperCall.helperMethod:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_SUPER:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
if_acmpne 4
2: iconst_1
istore 2
3: aload 1
invokevirtual org.jruby.ir.IRScope.getFlags:()Ljava/util/EnumSet;
getstatic org.jruby.ir.IRFlags.REQUIRES_CLASS:Lorg/jruby/ir/IRFlags;
invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
pop
4: StackMap locals: int
StackMap stack:
iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/ir/instructions/RuntimeHelperCall;
0 5 1 scope Lorg/jruby/ir/IRScope;
1 5 2 modifiedScope Z
MethodParameters:
Name Flags
scope
public org.jruby.ir.instructions.Instr clone(org.jruby.ir.transformations.inlining.CloneInfo);
descriptor: (Lorg/jruby/ir/transformations/inlining/CloneInfo;)Lorg/jruby/ir/instructions/Instr;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall.getResult:()Lorg/jruby/ir/operands/Variable;
astore 2
start local 2 1: new org.jruby.ir.instructions.RuntimeHelperCall
dup
aload 2
ifnonnull 2
aconst_null
goto 3
StackMap locals: org.jruby.ir.instructions.RuntimeHelperCall org.jruby.ir.transformations.inlining.CloneInfo org.jruby.ir.operands.Variable
StackMap stack: new 1 new 1
2: aload 1
aload 2
invokevirtual org.jruby.ir.transformations.inlining.CloneInfo.getRenamedVariable:(Lorg/jruby/ir/operands/Variable;)Lorg/jruby/ir/operands/Variable;
StackMap locals: org.jruby.ir.instructions.RuntimeHelperCall org.jruby.ir.transformations.inlining.CloneInfo org.jruby.ir.operands.Variable
StackMap stack: new 1 new 1 org.jruby.ir.operands.Variable
3: aload 0
getfield org.jruby.ir.instructions.RuntimeHelperCall.helperMethod:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
aload 0
aload 1
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall.cloneOperands:(Lorg/jruby/ir/transformations/inlining/CloneInfo;)[Lorg/jruby/ir/operands/Operand;
invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/ir/instructions/RuntimeHelperCall;
0 4 1 ii Lorg/jruby/ir/transformations/inlining/CloneInfo;
1 4 2 var Lorg/jruby/ir/operands/Variable;
MethodParameters:
Name Flags
ii
public void encode(org.jruby.ir.persistence.IRWriterEncoder);
descriptor: (Lorg/jruby/ir/persistence/IRWriterEncoder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.jruby.ir.instructions.NOperandResultBaseInstr.encode:(Lorg/jruby/ir/persistence/IRWriterEncoder;)V
1: aload 1
aload 0
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall.getHelperMethod:()Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
invokeinterface org.jruby.ir.persistence.IRWriterEncoder.encode:(I)V
2: aload 1
aload 0
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall.getArgs:()[Lorg/jruby/ir/operands/Operand;
invokeinterface org.jruby.ir.persistence.IRWriterEncoder.encode:([Lorg/jruby/ir/operands/Operand;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/ir/instructions/RuntimeHelperCall;
0 4 1 e Lorg/jruby/ir/persistence/IRWriterEncoder;
MethodParameters:
Name Flags
e
public static org.jruby.ir.instructions.RuntimeHelperCall decode(org.jruby.ir.persistence.IRReaderDecoder);
descriptor: (Lorg/jruby/ir/persistence/IRReaderDecoder;)Lorg/jruby/ir/instructions/RuntimeHelperCall;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: new org.jruby.ir.instructions.RuntimeHelperCall
dup
aload 0
invokeinterface org.jruby.ir.persistence.IRReaderDecoder.decodeVariable:()Lorg/jruby/ir/operands/Variable;
aload 0
invokeinterface org.jruby.ir.persistence.IRReaderDecoder.decodeInt:()I
invokestatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.fromOrdinal:(I)Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
aload 0
invokeinterface org.jruby.ir.persistence.IRReaderDecoder.decodeOperandArray:()[Lorg/jruby/ir/operands/Operand;
invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 d Lorg/jruby/ir/persistence/IRReaderDecoder;
MethodParameters:
Name Flags
d
public java.lang.String[] toStringNonOperandArgs();
descriptor: ()[Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
new java.lang.StringBuilder
dup
ldc "method: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.jruby.ir.instructions.RuntimeHelperCall.helperMethod:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aastore
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/ir/instructions/RuntimeHelperCall;
public org.jruby.runtime.builtin.IRubyObject callHelper(org.jruby.runtime.ThreadContext, org.jruby.parser.StaticScope, org.jruby.runtime.DynamicScope, org.jruby.runtime.builtin.IRubyObject, java.lang.Object[], org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/builtin/IRubyObject;[Ljava/lang/Object;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=9, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall.getOperands:()[Lorg/jruby/ir/operands/Operand;
astore 7
start local 7 1: aload 0
getfield org.jruby.ir.instructions.RuntimeHelperCall.helperMethod:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_BACKREF:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
if_acmpne 5
2: aload 1
3: aload 7
iconst_0
aaload
aload 1
aload 4
aload 2
aload 3
aload 5
invokevirtual org.jruby.ir.operands.Operand.retrieve:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/DynamicScope;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.jruby.runtime.builtin.IRubyObject
4: invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isDefinedBackref:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
5: StackMap locals: org.jruby.ir.operands.Operand[]
StackMap stack:
invokestatic org.jruby.ir.instructions.RuntimeHelperCall.$SWITCH_TABLE$org$jruby$ir$instructions$RuntimeHelperCall$Methods:()[I
aload 0
getfield org.jruby.ir.instructions.RuntimeHelperCall.helperMethod:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
iaload
tableswitch { // 5 - 6
5: 6
6: 10
default: 14
}
6: StackMap locals:
StackMap stack:
aload 1
7: aload 7
iconst_0
aaload
checkcast org.jruby.ir.operands.Fixnum
invokevirtual org.jruby.ir.operands.Fixnum.getValue:()J
l2i
8: aload 7
iconst_1
aaload
aload 1
aload 4
aload 2
aload 3
aload 5
invokevirtual org.jruby.ir.operands.Operand.retrieve:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/DynamicScope;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.jruby.runtime.builtin.IRubyObject
9: invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isDefinedNthRef:(Lorg/jruby/runtime/ThreadContext;ILorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
10: StackMap locals:
StackMap stack:
aload 1
11: aload 7
iconst_0
aaload
checkcast org.jruby.ir.operands.Stringable
invokeinterface org.jruby.ir.operands.Stringable.getString:()Ljava/lang/String;
12: aload 7
iconst_1
aaload
aload 1
aload 4
aload 2
aload 3
aload 5
invokevirtual org.jruby.ir.operands.Operand.retrieve:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/DynamicScope;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.jruby.runtime.builtin.IRubyObject
13: invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isDefinedGlobal:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
14: StackMap locals:
StackMap stack:
aload 7
iconst_0
aaload
aload 1
aload 4
aload 2
aload 3
aload 5
invokevirtual org.jruby.ir.operands.Operand.retrieve:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/DynamicScope;[Ljava/lang/Object;)Ljava/lang/Object;
astore 8
start local 8 15: invokestatic org.jruby.ir.instructions.RuntimeHelperCall.$SWITCH_TABLE$org$jruby$ir$instructions$RuntimeHelperCall$Methods:()[I
aload 0
getfield org.jruby.ir.instructions.RuntimeHelperCall.helperMethod:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
iaload
tableswitch { // 1 - 13
1: 16
2: 17
3: 18
4: 53
5: 53
6: 53
7: 31
8: 36
9: 41
10: 45
11: 19
12: 25
13: 50
default: 53
}
16: StackMap locals: java.lang.Object
StackMap stack:
aload 1
aload 3
aload 8
invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.handlePropagatedBreak:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/DynamicScope;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
17: StackMap locals:
StackMap stack:
aload 3
aload 8
invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.handleNonlocalReturn:(Lorg/jruby/runtime/DynamicScope;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
18: StackMap locals:
StackMap stack:
aload 1
aload 3
aload 8
aload 6
invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.handleBreakAndReturnsInLambdas:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/DynamicScope;Ljava/lang/Object;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
19: StackMap locals:
StackMap stack:
aload 1
20: aload 4
21: aload 8
checkcast org.jruby.runtime.builtin.IRubyObject
22: aload 7
iconst_1
aaload
checkcast org.jruby.ir.operands.Stringable
invokeinterface org.jruby.ir.operands.Stringable.getString:()Ljava/lang/String;
23: aload 7
iconst_2
aaload
aload 1
aload 4
aload 2
aload 3
aload 5
invokevirtual org.jruby.ir.operands.Operand.retrieve:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/DynamicScope;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.jruby.runtime.builtin.IRubyObject
24: invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isDefinedCall:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
25: StackMap locals:
StackMap stack:
aload 1
26: aload 8
checkcast org.jruby.runtime.builtin.IRubyObject
27: aload 7
iconst_1
aaload
checkcast org.jruby.ir.operands.FrozenString
invokevirtual org.jruby.ir.operands.FrozenString.getString:()Ljava/lang/String;
28: aload 7
iconst_2
aaload
aload 1
aload 4
aload 2
aload 3
aload 5
invokevirtual org.jruby.ir.operands.Operand.retrieve:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/DynamicScope;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.jruby.runtime.builtin.IRubyObject
29: aload 7
iconst_3
aaload
aload 1
aload 4
aload 2
aload 3
aload 5
invokevirtual org.jruby.ir.operands.Operand.retrieve:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/DynamicScope;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.jruby.runtime.builtin.IRubyObject
30: invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isDefinedConstantOrMethod:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
31: StackMap locals:
StackMap stack:
aload 1
32: aload 8
checkcast org.jruby.runtime.builtin.IRubyObject
33: aload 7
iconst_1
aaload
checkcast org.jruby.ir.operands.Stringable
invokeinterface org.jruby.ir.operands.Stringable.getString:()Ljava/lang/String;
34: aload 7
iconst_2
aaload
aload 1
aload 4
aload 2
aload 3
aload 5
invokevirtual org.jruby.ir.operands.Operand.retrieve:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/DynamicScope;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.jruby.runtime.builtin.IRubyObject
35: invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isDefinedInstanceVar:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
36: StackMap locals:
StackMap stack:
aload 1
37: aload 8
checkcast org.jruby.RubyModule
38: aload 7
iconst_1
aaload
checkcast org.jruby.ir.operands.Stringable
invokeinterface org.jruby.ir.operands.Stringable.getString:()Ljava/lang/String;
39: aload 7
iconst_2
aaload
aload 1
aload 4
aload 2
aload 3
aload 5
invokevirtual org.jruby.ir.operands.Operand.retrieve:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/DynamicScope;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.jruby.runtime.builtin.IRubyObject
40: invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isDefinedClassVar:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
41: StackMap locals:
StackMap stack:
aload 1
42: aload 8
checkcast org.jruby.runtime.builtin.IRubyObject
43: aload 7
iconst_1
aaload
aload 1
aload 4
aload 2
aload 3
aload 5
invokevirtual org.jruby.ir.operands.Operand.retrieve:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/DynamicScope;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.jruby.runtime.builtin.IRubyObject
44: invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isDefinedSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
45: StackMap locals:
StackMap stack:
aload 1
aload 8
checkcast org.jruby.runtime.builtin.IRubyObject
46: aload 7
iconst_1
aaload
checkcast org.jruby.ir.operands.Stringable
invokeinterface org.jruby.ir.operands.Stringable.getString:()Ljava/lang/String;
47: aload 7
iconst_2
aaload
checkcast org.jruby.ir.operands.Boolean
invokevirtual org.jruby.ir.operands.Boolean.isTrue:()Z
48: aload 7
iconst_3
aaload
aload 1
aload 4
aload 2
aload 3
aload 5
invokevirtual org.jruby.ir.operands.Operand.retrieve:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/DynamicScope;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.jruby.runtime.builtin.IRubyObject
49: invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isDefinedMethod:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;ZLorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
50: StackMap locals:
StackMap stack:
aload 1
aload 8
checkcast org.jruby.runtime.builtin.IRubyObject
51: aload 0
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall.getArgs:()[Lorg/jruby/ir/operands/Operand;
iconst_1
aaload
aload 1
aload 4
aload 2
aload 3
aload 5
invokevirtual org.jruby.ir.operands.Operand.retrieve:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/DynamicScope;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.jruby.runtime.builtin.IRubyObject
52: invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.mergeKeywordArguments:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
53: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "Unknown IR runtime helper method: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.jruby.ir.instructions.RuntimeHelperCall.helperMethod:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "; INSTR: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 54 0 this Lorg/jruby/ir/instructions/RuntimeHelperCall;
0 54 1 context Lorg/jruby/runtime/ThreadContext;
0 54 2 currScope Lorg/jruby/parser/StaticScope;
0 54 3 currDynScope Lorg/jruby/runtime/DynamicScope;
0 54 4 self Lorg/jruby/runtime/builtin/IRubyObject;
0 54 5 temp [Ljava/lang/Object;
0 54 6 block Lorg/jruby/runtime/Block;
1 54 7 operands [Lorg/jruby/ir/operands/Operand;
15 54 8 arg1 Ljava/lang/Object;
MethodParameters:
Name Flags
context
currScope
currDynScope
self
temp
block
public void visit(org.jruby.ir.IRVisitor);
descriptor: (Lorg/jruby/ir/IRVisitor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual org.jruby.ir.IRVisitor.RuntimeHelperCall:(Lorg/jruby/ir/instructions/RuntimeHelperCall;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/ir/instructions/RuntimeHelperCall;
0 2 1 visitor Lorg/jruby/ir/IRVisitor;
MethodParameters:
Name Flags
visitor
static int[] $SWITCH_TABLE$org$jruby$ir$instructions$RuntimeHelperCall$Methods();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.jruby.ir.instructions.RuntimeHelperCall.$SWITCH_TABLE$org$jruby$ir$instructions$RuntimeHelperCall$Methods:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.values:()[Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.HANDLE_BREAK_AND_RETURNS_IN_LAMBDA:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
iconst_3
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.HANDLE_NONLOCAL_RETURN:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
iconst_2
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.HANDLE_PROPAGATED_BREAK:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
iconst_1
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_BACKREF:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
iconst_4
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_CALL:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
bipush 11
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_CLASS_VAR:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
bipush 8
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_CONSTANT_OR_METHOD:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
bipush 12
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_GLOBAL:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
bipush 6
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_INSTANCE_VAR:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
bipush 7
iastore
27: goto 29
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
28: pop
StackMap locals:
StackMap stack:
29: aload 0
getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_METHOD:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
bipush 10
iastore
30: goto 32
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
31: pop
StackMap locals:
StackMap stack:
32: aload 0
getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_NTH_REF:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
iconst_5
iastore
33: goto 35
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
34: pop
StackMap locals:
StackMap stack:
35: aload 0
getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_SUPER:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
bipush 9
iastore
36: goto 38
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
37: pop
StackMap locals:
StackMap stack:
38: aload 0
getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.MERGE_KWARGS:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
invokevirtual org.jruby.ir.instructions.RuntimeHelperCall$Methods.ordinal:()I
bipush 13
iastore
39: goto 41
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
40: pop
StackMap locals:
StackMap stack:
41: aload 0
dup
putstatic org.jruby.ir.instructions.RuntimeHelperCall.$SWITCH_TABLE$org$jruby$ir$instructions$RuntimeHelperCall$Methods:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
23 24 25 Class java.lang.NoSuchFieldError
26 27 28 Class java.lang.NoSuchFieldError
29 30 31 Class java.lang.NoSuchFieldError
32 33 34 Class java.lang.NoSuchFieldError
35 36 37 Class java.lang.NoSuchFieldError
38 39 40 Class java.lang.NoSuchFieldError
}
SourceFile: "RuntimeHelperCall.java"
NestMembers:
org.jruby.ir.instructions.RuntimeHelperCall$Methods
InnerClasses:
public final Methods = org.jruby.ir.instructions.RuntimeHelperCall$Methods of org.jruby.ir.instructions.RuntimeHelperCall