public class org.graalvm.compiler.jtt.backend.LargeConstantSectionTest$LargeConstantClassLoader extends org.graalvm.compiler.test.ExportingClassLoader
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.jtt.backend.LargeConstantSectionTest$LargeConstantClassLoader
super_class: org.graalvm.compiler.test.ExportingClassLoader
{
public void <init>(java.lang.ClassLoader);
descriptor: (Ljava/lang/ClassLoader;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // org.graalvm.compiler.jtt.backend.LargeConstantSectionTest$LargeConstantClassLoader this
start local 1 // java.lang.ClassLoader parent
0: .line 74
aload 0 /* this */
aload 1 /* parent */
invokespecial org.graalvm.compiler.test.ExportingClassLoader.<init>:(Ljava/lang/ClassLoader;)V
1: .line 75
return
end local 1 // java.lang.ClassLoader parent
end local 0 // org.graalvm.compiler.jtt.backend.LargeConstantSectionTest$LargeConstantClassLoader this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/jtt/backend/LargeConstantSectionTest$LargeConstantClassLoader;
0 2 1 parent Ljava/lang/ClassLoader;
MethodParameters:
Name Flags
parent
protected java.lang.Class<?> findClass(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Class;
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=12, args_size=2
start local 0 // org.graalvm.compiler.jtt.backend.LargeConstantSectionTest$LargeConstantClassLoader this
start local 1 // java.lang.String name
0: .line 79
aload 1 /* name */
ldc "LargeConstantSection"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 48
1: .line 80
ldc Lorg/graalvm/compiler/api/directives/GraalDirectives;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
bipush 46
bipush 47
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
astore 2 /* graalDirectivesClassName */
start local 2 // java.lang.String graalDirectivesClassName
2: .line 81
sipush 1100
istore 3 /* numberIfBlocks */
start local 3 // int numberIfBlocks
3: .line 82
new jdk.internal.org.objectweb.asm.ClassWriter
dup
iconst_0
invokespecial jdk.internal.org.objectweb.asm.ClassWriter.<init>:(I)V
astore 4 /* cw */
start local 4 // jdk.internal.org.objectweb.asm.ClassWriter cw
4: .line 84
ldc Lorg/graalvm/compiler/jtt/backend/LargeConstantSectionTest$LargeConstantAbstract;
invokestatic jdk.internal.org.objectweb.asm.Type.getInternalName:(Ljava/lang/Class;)Ljava/lang/String;
astore 6 /* abstractClassName */
start local 6 // java.lang.String abstractClassName
5: .line 85
aload 4 /* cw */
bipush 52
bipush 33
ldc "LargeConstantSection"
aconst_null
aload 6 /* abstractClassName */
aconst_null
invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.visit:(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
6: .line 87
aload 4 /* cw */
iconst_1
ldc "<init>"
ldc "()V"
aconst_null
aconst_null
invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.visitMethod:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Ljdk/internal/org/objectweb/asm/MethodVisitor;
astore 5 /* mv */
start local 5 // jdk.internal.org.objectweb.asm.MethodVisitor mv
7: .line 88
aload 5 /* mv */
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitCode:()V
8: .line 89
new jdk.internal.org.objectweb.asm.Label
dup
invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
astore 7 /* l0 */
start local 7 // jdk.internal.org.objectweb.asm.Label l0
9: .line 90
aload 5 /* mv */
aload 7 /* l0 */
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
10: .line 91
aload 5 /* mv */
bipush 25
iconst_0
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
11: .line 92
aload 5 /* mv */
sipush 183
aload 6 /* abstractClassName */
ldc "<init>"
ldc "()V"
iconst_0
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
12: .line 93
aload 5 /* mv */
sipush 177
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
13: .line 94
new jdk.internal.org.objectweb.asm.Label
dup
invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
astore 8 /* l1 */
start local 8 // jdk.internal.org.objectweb.asm.Label l1
14: .line 95
aload 5 /* mv */
aload 8 /* l1 */
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
15: .line 96
aload 5 /* mv */
iconst_1
iconst_1
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMaxs:(II)V
16: .line 97
aload 5 /* mv */
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitEnd:()V
17: .line 99
aload 4 /* cw */
iconst_1
ldc "run"
ldc "(J)J"
aconst_null
aconst_null
invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.visitMethod:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Ljdk/internal/org/objectweb/asm/MethodVisitor;
astore 5 /* mv */
18: .line 100
aload 5 /* mv */
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitCode:()V
19: .line 101
new jdk.internal.org.objectweb.asm.Label
dup
invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
astore 9 /* nextIf */
start local 9 // jdk.internal.org.objectweb.asm.Label nextIf
20: .line 102
iconst_0
istore 10 /* i */
start local 10 // int i
21: goto 36
22: .line 103
StackMap locals: org.graalvm.compiler.jtt.backend.LargeConstantSectionTest$LargeConstantClassLoader java.lang.String java.lang.String int jdk.internal.org.objectweb.asm.ClassWriter jdk.internal.org.objectweb.asm.MethodVisitor java.lang.String jdk.internal.org.objectweb.asm.Label jdk.internal.org.objectweb.asm.Label jdk.internal.org.objectweb.asm.Label int
StackMap stack:
aload 5 /* mv */
aload 9 /* nextIf */
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
23: .line 104
aload 5 /* mv */
iconst_m1
iconst_2
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 6 /* abstractClassName */
aastore
dup
iconst_1
getstatic jdk.internal.org.objectweb.asm.Opcodes.LONG:Ljava/lang/Integer;
aastore
iconst_0
iconst_0
anewarray java.lang.Object
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitFrame:(II[Ljava/lang/Object;I[Ljava/lang/Object;)V
24: .line 105
aload 5 /* mv */
bipush 22
iconst_1
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
25: .line 106
aload 5 /* mv */
new java.lang.Long
dup
ldc 1034834473200
iload 10 /* i */
i2l
ladd
invokespecial java.lang.Long.<init>:(J)V
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
26: .line 107
aload 5 /* mv */
sipush 148
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
27: .line 108
new jdk.internal.org.objectweb.asm.Label
dup
invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
astore 9 /* nextIf */
28: .line 109
aload 5 /* mv */
sipush 154
aload 9 /* nextIf */
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitJumpInsn:(ILjdk/internal/org/objectweb/asm/Label;)V
29: .line 110
aload 5 /* mv */
new java.lang.Long
dup
ldc 1034834473200
iload 10 /* i */
i2l
ladd
iload 3 /* numberIfBlocks */
i2l
ladd
invokespecial java.lang.Long.<init>:(J)V
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
30: .line 111
aload 5 /* mv */
sipush 184
aload 2 /* graalDirectivesClassName */
ldc "opaque"
ldc "(J)J"
iconst_0
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
31: .line 112
aload 5 /* mv */
new java.lang.Long
dup
ldc 1034834473200
iload 10 /* i */
i2l
ladd
iload 3 /* numberIfBlocks */
iconst_2
imul
i2l
ladd
invokespecial java.lang.Long.<init>:(J)V
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
32: .line 113
aload 5 /* mv */
sipush 184
aload 2 /* graalDirectivesClassName */
ldc "opaque"
ldc "(J)J"
iconst_0
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
33: .line 114
aload 5 /* mv */
bipush 97
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
34: .line 115
aload 5 /* mv */
sipush 173
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
35: .line 102
iinc 10 /* i */ 1
StackMap locals:
StackMap stack:
36: iload 10 /* i */
iload 3 /* numberIfBlocks */
if_icmplt 22
end local 10 // int i
37: .line 117
aload 5 /* mv */
aload 9 /* nextIf */
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
38: .line 118
aload 5 /* mv */
iconst_m1
iconst_2
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 6 /* abstractClassName */
aastore
dup
iconst_1
getstatic jdk.internal.org.objectweb.asm.Opcodes.LONG:Ljava/lang/Integer;
aastore
iconst_0
iconst_0
anewarray java.lang.Object
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitFrame:(II[Ljava/lang/Object;I[Ljava/lang/Object;)V
39: .line 119
aload 5 /* mv */
bipush 9
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
40: .line 120
aload 5 /* mv */
sipush 173
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
41: .line 121
new jdk.internal.org.objectweb.asm.Label
dup
invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
astore 10 /* l9 */
start local 10 // jdk.internal.org.objectweb.asm.Label l9
42: .line 122
aload 5 /* mv */
aload 10 /* l9 */
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
43: .line 123
aload 5 /* mv */
iconst_4
bipush 6
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMaxs:(II)V
44: .line 124
aload 5 /* mv */
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitEnd:()V
45: .line 126
aload 4 /* cw */
invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.visitEnd:()V
46: .line 128
aload 4 /* cw */
invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.toByteArray:()[B
astore 11 /* bytes */
start local 11 // byte[] bytes
47: .line 129
aload 0 /* this */
aload 1 /* name */
aload 11 /* bytes */
iconst_0
aload 11 /* bytes */
arraylength
invokevirtual org.graalvm.compiler.jtt.backend.LargeConstantSectionTest$LargeConstantClassLoader.defineClass:(Ljava/lang/String;[BII)Ljava/lang/Class;
areturn
end local 11 // byte[] bytes
end local 10 // jdk.internal.org.objectweb.asm.Label l9
end local 9 // jdk.internal.org.objectweb.asm.Label nextIf
end local 8 // jdk.internal.org.objectweb.asm.Label l1
end local 7 // jdk.internal.org.objectweb.asm.Label l0
end local 6 // java.lang.String abstractClassName
end local 5 // jdk.internal.org.objectweb.asm.MethodVisitor mv
end local 4 // jdk.internal.org.objectweb.asm.ClassWriter cw
end local 3 // int numberIfBlocks
end local 2 // java.lang.String graalDirectivesClassName
48: .line 131
StackMap locals: org.graalvm.compiler.jtt.backend.LargeConstantSectionTest$LargeConstantClassLoader java.lang.String
StackMap stack:
aload 0 /* this */
aload 1 /* name */
invokespecial org.graalvm.compiler.test.ExportingClassLoader.findClass:(Ljava/lang/String;)Ljava/lang/Class;
areturn
end local 1 // java.lang.String name
end local 0 // org.graalvm.compiler.jtt.backend.LargeConstantSectionTest$LargeConstantClassLoader this
LocalVariableTable:
Start End Slot Name Signature
0 49 0 this Lorg/graalvm/compiler/jtt/backend/LargeConstantSectionTest$LargeConstantClassLoader;
0 49 1 name Ljava/lang/String;
2 48 2 graalDirectivesClassName Ljava/lang/String;
3 48 3 numberIfBlocks I
4 48 4 cw Ljdk/internal/org/objectweb/asm/ClassWriter;
7 48 5 mv Ljdk/internal/org/objectweb/asm/MethodVisitor;
5 48 6 abstractClassName Ljava/lang/String;
9 48 7 l0 Ljdk/internal/org/objectweb/asm/Label;
14 48 8 l1 Ljdk/internal/org/objectweb/asm/Label;
20 48 9 nextIf Ljdk/internal/org/objectweb/asm/Label;
21 37 10 i I
42 48 10 l9 Ljdk/internal/org/objectweb/asm/Label;
47 48 11 bytes [B
Exceptions:
throws java.lang.ClassNotFoundException
Signature: (Ljava/lang/String;)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
name
}
SourceFile: "LargeConstantSectionTest.java"
NestHost: org.graalvm.compiler.jtt.backend.LargeConstantSectionTest
InnerClasses:
public abstract LargeConstantAbstract = org.graalvm.compiler.jtt.backend.LargeConstantSectionTest$LargeConstantAbstract of org.graalvm.compiler.jtt.backend.LargeConstantSectionTest
public LargeConstantClassLoader = org.graalvm.compiler.jtt.backend.LargeConstantSectionTest$LargeConstantClassLoader of org.graalvm.compiler.jtt.backend.LargeConstantSectionTest