abstract class com.oracle.truffle.api.dsl.test.AssumptionsTest$AssumptionInvalidateTest2 extends com.oracle.truffle.api.nodes.Node
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.truffle.api.dsl.test.AssumptionsTest$AssumptionInvalidateTest2
super_class: com.oracle.truffle.api.nodes.Node
{
com.oracle.truffle.api.Assumption[] assumptions;
descriptor: [Lcom/oracle/truffle/api/Assumption;
flags: (0x0000)
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.oracle.truffle.api.nodes.Node.<init>:()V
1: aload 0
iconst_3
anewarray com.oracle.truffle.api.Assumption
putfield com.oracle.truffle.api.dsl.test.AssumptionsTest$AssumptionInvalidateTest2.assumptions:[Lcom/oracle/truffle/api/Assumption;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/api/dsl/test/AssumptionsTest$AssumptionInvalidateTest2;
abstract int execute(int);
descriptor: (I)I
flags: (0x0400) ACC_ABSTRACT
MethodParameters:
Name Flags
value
public int s0(int, int, com.oracle.truffle.api.nodes.Node);
descriptor: (IILcom/oracle/truffle/api/nodes/Node;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/dsl/test/AssumptionsTest$AssumptionInvalidateTest2;
0 1 1 value I
0 1 2 cachedValue I
0 1 3 node Lcom/oracle/truffle/api/nodes/Node;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.dsl.Specialization(guards = {"value == cachedValue"}, limit = "3", assumptions = {"createAssumption(cachedValue)"})
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.dsl.Cached(value = "value")
2:
com.oracle.truffle.api.dsl.Cached(value = "createChild()")
MethodParameters:
Name Flags
value
cachedValue
node
static com.oracle.truffle.api.nodes.Node createChild();
descriptor: ()Lcom/oracle/truffle/api/nodes/Node;
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: aconst_null
areturn
LocalVariableTable:
Start End Slot Name Signature
com.oracle.truffle.api.Assumption createAssumption(int);
descriptor: (I)Lcom/oracle/truffle/api/Assumption;
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:()Lcom/oracle/truffle/api/Assumption;
astore 2
start local 2 1: aload 0
getfield com.oracle.truffle.api.dsl.test.AssumptionsTest$AssumptionInvalidateTest2.assumptions:[Lcom/oracle/truffle/api/Assumption;
iload 1
aload 2
aastore
2: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/api/dsl/test/AssumptionsTest$AssumptionInvalidateTest2;
0 3 1 value I
1 3 2 a Lcom/oracle/truffle/api/Assumption;
MethodParameters:
Name Flags
value
}
SourceFile: "AssumptionsTest.java"
NestHost: com.oracle.truffle.api.dsl.test.AssumptionsTest
InnerClasses:
abstract AssumptionInvalidateTest2 = com.oracle.truffle.api.dsl.test.AssumptionsTest$AssumptionInvalidateTest2 of com.oracle.truffle.api.dsl.test.AssumptionsTest
RuntimeInvisibleAnnotations:
com.oracle.truffle.api.dsl.TypeSystemReference(value = Lcom/oracle/truffle/api/dsl/test/examples/ExampleTypes;)