public class com.oracle.truffle.object.basic.test.ShapeTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.object.basic.test.ShapeTest
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // com.oracle.truffle.object.basic.test.ShapeTest this
0: .line 51
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // com.oracle.truffle.object.basic.test.ShapeTest this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/object/basic/test/ShapeTest;
public void testToString();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=10, args_size=1
start local 0 // com.oracle.truffle.object.basic.test.ShapeTest this
0: .line 55
invokestatic com.oracle.truffle.api.object.Layout.newLayout:()Lcom/oracle/truffle/api/object/Layout$Builder;
getstatic com.oracle.truffle.api.object.Layout$ImplicitCast.IntToLong:Lcom/oracle/truffle/api/object/Layout$ImplicitCast;
invokevirtual com.oracle.truffle.api.object.Layout$Builder.addAllowedImplicitCast:(Lcom/oracle/truffle/api/object/Layout$ImplicitCast;)Lcom/oracle/truffle/api/object/Layout$Builder;
invokevirtual com.oracle.truffle.api.object.Layout$Builder.build:()Lcom/oracle/truffle/api/object/Layout;
astore 1 /* layout */
start local 1 // com.oracle.truffle.api.object.Layout layout
1: .line 57
aload 1 /* layout */
new com.oracle.truffle.api.object.ObjectType
dup
invokespecial com.oracle.truffle.api.object.ObjectType.<init>:()V
invokevirtual com.oracle.truffle.api.object.Layout.createShape:(Lcom/oracle/truffle/api/object/ObjectType;)Lcom/oracle/truffle/api/object/Shape;
astore 2 /* rootShape */
start local 2 // com.oracle.truffle.api.object.Shape rootShape
2: .line 58
iconst_0
anewarray java.lang.String
aload 2 /* rootShape */
invokestatic com.oracle.truffle.object.basic.test.DOTestAsserts.assertShape:([Ljava/lang/String;Lcom/oracle/truffle/api/object/Shape;)V
3: .line 60
aload 2 /* rootShape */
ldc "a"
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
iconst_0
invokevirtual com.oracle.truffle.api.object.Shape.defineProperty:(Ljava/lang/Object;Ljava/lang/Object;I)Lcom/oracle/truffle/api/object/Shape;
astore 3 /* aInt */
start local 3 // com.oracle.truffle.api.object.Shape aInt
4: .line 61
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "\"a\":int@0"
aastore
aload 3 /* aInt */
invokestatic com.oracle.truffle.object.basic.test.DOTestAsserts.assertShape:([Ljava/lang/String;Lcom/oracle/truffle/api/object/Shape;)V
5: .line 63
aload 3 /* aInt */
ldc "a"
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
iconst_0
invokevirtual com.oracle.truffle.api.object.Shape.defineProperty:(Ljava/lang/Object;Ljava/lang/Object;I)Lcom/oracle/truffle/api/object/Shape;
astore 4 /* aObj */
start local 4 // com.oracle.truffle.api.object.Shape aObj
6: .line 64
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "\"a\":Object@0"
aastore
aload 4 /* aObj */
invokestatic com.oracle.truffle.object.basic.test.DOTestAsserts.assertShape:([Ljava/lang/String;Lcom/oracle/truffle/api/object/Shape;)V
7: .line 66
aload 4 /* aObj */
ldc "b"
iconst_2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
iconst_0
invokevirtual com.oracle.truffle.api.object.Shape.defineProperty:(Ljava/lang/Object;Ljava/lang/Object;I)Lcom/oracle/truffle/api/object/Shape;
astore 5 /* aObjBInt */
start local 5 // com.oracle.truffle.api.object.Shape aObjBInt
8: .line 67
iconst_2
anewarray java.lang.String
dup
iconst_0
9: .line 68
ldc "\"b\":int@1"
aastore
dup
iconst_1
10: .line 69
ldc "\"a\":Object@0"
aastore
aload 5 /* aObjBInt */
11: .line 67
invokestatic com.oracle.truffle.object.basic.test.DOTestAsserts.assertShape:([Ljava/lang/String;Lcom/oracle/truffle/api/object/Shape;)V
12: .line 71
aload 3 /* aInt */
ldc "b"
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
iconst_0
invokevirtual com.oracle.truffle.api.object.Shape.defineProperty:(Ljava/lang/Object;Ljava/lang/Object;I)Lcom/oracle/truffle/api/object/Shape;
astore 6 /* aIntBObj */
start local 6 // com.oracle.truffle.api.object.Shape aIntBObj
13: .line 72
iconst_2
anewarray java.lang.String
dup
iconst_0
14: .line 73
ldc "\"b\":Object@0"
aastore
dup
iconst_1
15: .line 74
ldc "\"a\":int@0"
aastore
aload 6 /* aIntBObj */
16: .line 72
invokestatic com.oracle.truffle.object.basic.test.DOTestAsserts.assertShape:([Ljava/lang/String;Lcom/oracle/truffle/api/object/Shape;)V
17: .line 76
aload 2 /* rootShape */
ldc "bool"
aload 2 /* rootShape */
invokevirtual com.oracle.truffle.api.object.Shape.allocator:()Lcom/oracle/truffle/api/object/Shape$Allocator;
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
invokevirtual com.oracle.truffle.api.object.Shape$Allocator.locationForType:(Ljava/lang/Class;)Lcom/oracle/truffle/api/object/Location;
iconst_0
invokestatic com.oracle.truffle.api.object.Property.create:(Ljava/lang/Object;Lcom/oracle/truffle/api/object/Location;I)Lcom/oracle/truffle/api/object/Property;
invokevirtual com.oracle.truffle.api.object.Shape.addProperty:(Lcom/oracle/truffle/api/object/Property;)Lcom/oracle/truffle/api/object/Shape;
astore 7 /* bool */
start local 7 // com.oracle.truffle.api.object.Shape bool
18: .line 77
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "\"bool\":boolean@0"
aastore
aload 7 /* bool */
invokestatic com.oracle.truffle.object.basic.test.DOTestAsserts.assertShape:([Ljava/lang/String;Lcom/oracle/truffle/api/object/Shape;)V
19: .line 79
aload 2 /* rootShape */
ldc "str"
aload 2 /* rootShape */
invokevirtual com.oracle.truffle.api.object.Shape.allocator:()Lcom/oracle/truffle/api/object/Shape$Allocator;
ldc Ljava/lang/String;
invokevirtual com.oracle.truffle.api.object.Shape$Allocator.locationForType:(Ljava/lang/Class;)Lcom/oracle/truffle/api/object/Location;
iconst_0
invokestatic com.oracle.truffle.api.object.Property.create:(Ljava/lang/Object;Lcom/oracle/truffle/api/object/Location;I)Lcom/oracle/truffle/api/object/Property;
invokevirtual com.oracle.truffle.api.object.Shape.addProperty:(Lcom/oracle/truffle/api/object/Property;)Lcom/oracle/truffle/api/object/Shape;
astore 8 /* str */
start local 8 // com.oracle.truffle.api.object.Shape str
20: .line 80
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "\"str\":Object@0"
aastore
aload 8 /* str */
invokestatic com.oracle.truffle.object.basic.test.DOTestAsserts.assertShape:([Ljava/lang/String;Lcom/oracle/truffle/api/object/Shape;)V
21: .line 82
aload 6 /* aIntBObj */
ldc "c"
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iconst_0
invokevirtual com.oracle.truffle.api.object.Shape.defineProperty:(Ljava/lang/Object;Ljava/lang/Object;I)Lcom/oracle/truffle/api/object/Shape;
ldc "d"
ldc 3.14
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
iconst_0
invokevirtual com.oracle.truffle.api.object.Shape.defineProperty:(Ljava/lang/Object;Ljava/lang/Object;I)Lcom/oracle/truffle/api/object/Shape;
ldc "e"
ldc 17592186044416
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
iconst_0
invokevirtual com.oracle.truffle.api.object.Shape.defineProperty:(Ljava/lang/Object;Ljava/lang/Object;I)Lcom/oracle/truffle/api/object/Shape;
astore 9 /* shapeWithExtArray */
start local 9 // com.oracle.truffle.api.object.Shape shapeWithExtArray
22: .line 83
iconst_5
anewarray java.lang.String
dup
iconst_0
23: .line 84
ldc "\"e\":long[0]"
aastore
dup
iconst_1
24: .line 85
ldc "\"d\":double@2"
aastore
dup
iconst_2
25: .line 86
ldc "\"c\":boolean@1"
aastore
dup
iconst_3
26: .line 87
ldc "\"b\":Object@0"
aastore
dup
iconst_4
27: .line 88
ldc "\"a\":int@0"
aastore
aload 9 /* shapeWithExtArray */
28: .line 83
invokestatic com.oracle.truffle.object.basic.test.DOTestAsserts.assertShape:([Ljava/lang/String;Lcom/oracle/truffle/api/object/Shape;)V
29: .line 89
return
end local 9 // com.oracle.truffle.api.object.Shape shapeWithExtArray
end local 8 // com.oracle.truffle.api.object.Shape str
end local 7 // com.oracle.truffle.api.object.Shape bool
end local 6 // com.oracle.truffle.api.object.Shape aIntBObj
end local 5 // com.oracle.truffle.api.object.Shape aObjBInt
end local 4 // com.oracle.truffle.api.object.Shape aObj
end local 3 // com.oracle.truffle.api.object.Shape aInt
end local 2 // com.oracle.truffle.api.object.Shape rootShape
end local 1 // com.oracle.truffle.api.object.Layout layout
end local 0 // com.oracle.truffle.object.basic.test.ShapeTest this
LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lcom/oracle/truffle/object/basic/test/ShapeTest;
1 30 1 layout Lcom/oracle/truffle/api/object/Layout;
2 30 2 rootShape Lcom/oracle/truffle/api/object/Shape;
4 30 3 aInt Lcom/oracle/truffle/api/object/Shape;
6 30 4 aObj Lcom/oracle/truffle/api/object/Shape;
8 30 5 aObjBInt Lcom/oracle/truffle/api/object/Shape;
13 30 6 aIntBObj Lcom/oracle/truffle/api/object/Shape;
18 30 7 bool Lcom/oracle/truffle/api/object/Shape;
20 30 8 str Lcom/oracle/truffle/api/object/Shape;
22 30 9 shapeWithExtArray Lcom/oracle/truffle/api/object/Shape;
RuntimeVisibleAnnotations:
org.junit.Test()
}
SourceFile: "ShapeTest.java"
InnerClasses:
public final Builder = com.oracle.truffle.api.object.Layout$Builder of com.oracle.truffle.api.object.Layout
public final ImplicitCast = com.oracle.truffle.api.object.Layout$ImplicitCast of com.oracle.truffle.api.object.Layout
public abstract Allocator = com.oracle.truffle.api.object.Shape$Allocator of com.oracle.truffle.api.object.Shape