class jdk.internal.reflect.MethodAccessorGenerator extends jdk.internal.reflect.AccessorGenerator
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.internal.reflect.MethodAccessorGenerator
super_class: jdk.internal.reflect.AccessorGenerator
{
private static final short NUM_BASE_CPOOL_ENTRIES;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 12
private static final short NUM_METHODS;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final short NUM_SERIALIZATION_CPOOL_ENTRIES;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static volatile int methodSymnum;
descriptor: I
flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE
private static volatile int constructorSymnum;
descriptor: I
flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE
private static volatile int serializationConstructorSymnum;
descriptor: I
flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE
private java.lang.Class<?> declaringClass;
descriptor: Ljava/lang/Class;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/lang/Class<*>;
private java.lang.Class<?>[] parameterTypes;
descriptor: [Ljava/lang/Class;
flags: (0x0002) ACC_PRIVATE
Signature: [Ljava/lang/Class<*>;
private java.lang.Class<?> returnType;
descriptor: Ljava/lang/Class;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/lang/Class<*>;
private boolean isConstructor;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean forSerialization;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private short targetMethodRef;
descriptor: S
flags: (0x0002) ACC_PRIVATE
private short invokeIdx;
descriptor: S
flags: (0x0002) ACC_PRIVATE
private short invokeDescriptorIdx;
descriptor: S
flags: (0x0002) ACC_PRIVATE
private short nonPrimitiveParametersBaseIdx;
descriptor: S
flags: (0x0002) ACC_PRIVATE
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial jdk.internal.reflect.AccessorGenerator.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/internal/reflect/MethodAccessorGenerator;
public jdk.internal.reflect.MethodAccessor generateMethod(java.lang.Class<?>, java.lang.String, java.lang.Class<?>[], java.lang.Class<?>, java.lang.Class<?>[], int);
descriptor: (Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;I)Ljdk/internal/reflect/MethodAccessor;
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=7, 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
aload 1
1: aload 2
2: aload 3
3: aload 4
4: aload 5
5: iload 6
6: iconst_0
7: iconst_0
8: aconst_null
9: invokevirtual jdk.internal.reflect.MethodAccessorGenerator.generate:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;IZZLjava/lang/Class;)Ljdk/internal/reflect/MagicAccessorImpl;
checkcast jdk.internal.reflect.MethodAccessor
areturn
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 10 0 this Ljdk/internal/reflect/MethodAccessorGenerator;
0 10 1 declaringClass Ljava/lang/Class<*>;
0 10 2 name Ljava/lang/String;
0 10 3 parameterTypes [Ljava/lang/Class;
0 10 4 returnType Ljava/lang/Class<*>;
0 10 5 checkedExceptions [Ljava/lang/Class;
0 10 6 modifiers I
Signature: (Ljava/lang/Class<*>;Ljava/lang/String;[Ljava/lang/Class<*>;Ljava/lang/Class<*>;[Ljava/lang/Class<*>;I)Ljdk/internal/reflect/MethodAccessor;
MethodParameters:
Name Flags
declaringClass
name
parameterTypes
returnType
checkedExceptions
modifiers
public jdk.internal.reflect.ConstructorAccessor generateConstructor(java.lang.Class<?>, java.lang.Class<?>[], java.lang.Class<?>[], int);
descriptor: (Ljava/lang/Class;[Ljava/lang/Class;[Ljava/lang/Class;I)Ljdk/internal/reflect/ConstructorAccessor;
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
1: ldc "<init>"
2: aload 2
3: getstatic java.lang.Void.TYPE:Ljava/lang/Class;
4: aload 3
5: iload 4
6: iconst_1
7: iconst_0
8: aconst_null
9: invokevirtual jdk.internal.reflect.MethodAccessorGenerator.generate:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;IZZLjava/lang/Class;)Ljdk/internal/reflect/MagicAccessorImpl;
checkcast jdk.internal.reflect.ConstructorAccessor
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljdk/internal/reflect/MethodAccessorGenerator;
0 10 1 declaringClass Ljava/lang/Class<*>;
0 10 2 parameterTypes [Ljava/lang/Class;
0 10 3 checkedExceptions [Ljava/lang/Class;
0 10 4 modifiers I
Signature: (Ljava/lang/Class<*>;[Ljava/lang/Class<*>;[Ljava/lang/Class<*>;I)Ljdk/internal/reflect/ConstructorAccessor;
MethodParameters:
Name Flags
declaringClass
parameterTypes
checkedExceptions
modifiers
public jdk.internal.reflect.SerializationConstructorAccessorImpl generateSerializationConstructor(java.lang.Class<?>, java.lang.Class<?>[], java.lang.Class<?>[], int, java.lang.Class<?>);
descriptor: (Ljava/lang/Class;[Ljava/lang/Class;[Ljava/lang/Class;ILjava/lang/Class;)Ljdk/internal/reflect/SerializationConstructorAccessorImpl;
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
1: ldc "<init>"
2: aload 2
3: getstatic java.lang.Void.TYPE:Ljava/lang/Class;
4: aload 3
5: iload 4
6: iconst_1
7: iconst_1
8: aload 5
9: invokevirtual jdk.internal.reflect.MethodAccessorGenerator.generate:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;IZZLjava/lang/Class;)Ljdk/internal/reflect/MagicAccessorImpl;
10: checkcast jdk.internal.reflect.SerializationConstructorAccessorImpl
areturn
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 11 0 this Ljdk/internal/reflect/MethodAccessorGenerator;
0 11 1 declaringClass Ljava/lang/Class<*>;
0 11 2 parameterTypes [Ljava/lang/Class;
0 11 3 checkedExceptions [Ljava/lang/Class;
0 11 4 modifiers I
0 11 5 targetConstructorClass Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;[Ljava/lang/Class<*>;[Ljava/lang/Class<*>;ILjava/lang/Class<*>;)Ljdk/internal/reflect/SerializationConstructorAccessorImpl;
MethodParameters:
Name Flags
declaringClass
parameterTypes
checkedExceptions
modifiers
targetConstructorClass
private jdk.internal.reflect.MagicAccessorImpl generate(java.lang.Class<?>, java.lang.String, java.lang.Class<?>[], java.lang.Class<?>, java.lang.Class<?>[], int, boolean, boolean, java.lang.Class<?>);
descriptor: (Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;IZZLjava/lang/Class;)Ljdk/internal/reflect/MagicAccessorImpl;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=17, args_size=10
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 0: invokestatic jdk.internal.reflect.ByteVectorFactory.create:()Ljdk/internal/reflect/ByteVector;
astore 10
start local 10 1: aload 0
new jdk.internal.reflect.ClassFileAssembler
dup
aload 10
invokespecial jdk.internal.reflect.ClassFileAssembler.<init>:(Ljdk/internal/reflect/ByteVector;)V
putfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
2: aload 0
aload 1
putfield jdk.internal.reflect.MethodAccessorGenerator.declaringClass:Ljava/lang/Class;
3: aload 0
aload 3
putfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
4: aload 0
aload 4
putfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
5: aload 0
iload 6
putfield jdk.internal.reflect.MethodAccessorGenerator.modifiers:I
6: aload 0
iload 7
putfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
7: aload 0
iload 8
putfield jdk.internal.reflect.MethodAccessorGenerator.forSerialization:Z
8: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitMagicAndVersion:()V
9: bipush 42
istore 11
start local 11 10: aload 0
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.usesPrimitiveTypes:()Z
istore 12
start local 12 11: iload 12
ifeq 13
12: iload 11
bipush 73
iadd
i2s
istore 11
13: StackMap locals: jdk.internal.reflect.ByteVector int int
StackMap stack:
iload 8
ifeq 15
14: iload 11
iconst_2
iadd
i2s
istore 11
15: StackMap locals:
StackMap stack:
iload 11
iconst_2
aload 0
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.numNonPrimitiveParameterTypes:()I
imul
i2s
iadd
i2s
istore 11
16: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
iload 11
iconst_1
invokestatic jdk.internal.reflect.MethodAccessorGenerator.add:(SS)S
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
17: iload 7
iload 8
invokestatic jdk.internal.reflect.MethodAccessorGenerator.generateName:(ZZ)Ljava/lang/String;
astore 13
start local 13 18: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 13
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
19: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolClass:(S)V
20: aload 0
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
putfield jdk.internal.reflect.MethodAccessorGenerator.thisClass:S
21: iload 7
ifeq 29
22: iload 8
ifeq 27
23: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
24: ldc "jdk/internal/reflect/SerializationConstructorAccessorImpl"
25: invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
26: goto 30
27: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
ldc "jdk/internal/reflect/ConstructorAccessorImpl"
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
28: goto 30
29: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
ldc "jdk/internal/reflect/MethodAccessorImpl"
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
30: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolClass:(S)V
31: aload 0
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
putfield jdk.internal.reflect.MethodAccessorGenerator.superClass:S
32: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 1
iconst_0
invokestatic jdk.internal.reflect.MethodAccessorGenerator.getClassName:(Ljava/lang/Class;Z)Ljava/lang/String;
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
33: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolClass:(S)V
34: aload 0
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
putfield jdk.internal.reflect.MethodAccessorGenerator.targetClass:S
35: iconst_0
istore 14
start local 14 36: iload 8
ifeq 40
37: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 9
iconst_0
invokestatic jdk.internal.reflect.MethodAccessorGenerator.getClassName:(Ljava/lang/Class;Z)Ljava/lang/String;
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
38: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolClass:(S)V
39: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
istore 14
40: StackMap locals: int
StackMap stack:
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 2
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
41: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 0
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.buildInternalSignature:()Ljava/lang/String;
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
42: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
iconst_1
invokestatic jdk.internal.reflect.MethodAccessorGenerator.sub:(SS)S
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolNameAndType:(SS)V
43: aload 0
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.isInterface:()Z
ifeq 46
44: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.targetClass:S
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolInterfaceMethodref:(SS)V
45: goto 50
46: StackMap locals:
StackMap stack:
iload 8
ifeq 49
47: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
iload 14
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolMethodref:(SS)V
48: goto 50
49: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.targetClass:S
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolMethodref:(SS)V
50: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
putfield jdk.internal.reflect.MethodAccessorGenerator.targetMethodRef:S
51: iload 7
ifeq 54
52: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
ldc "newInstance"
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
53: goto 55
54: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
ldc "invoke"
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
55: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
putfield jdk.internal.reflect.MethodAccessorGenerator.invokeIdx:S
56: iload 7
ifeq 59
57: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
ldc "([Ljava/lang/Object;)Ljava/lang/Object;"
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
58: goto 62
59: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
60: ldc "(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;"
61: invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
62: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
putfield jdk.internal.reflect.MethodAccessorGenerator.invokeDescriptorIdx:S
63: aload 0
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
iconst_2
invokestatic jdk.internal.reflect.MethodAccessorGenerator.add:(SS)S
putfield jdk.internal.reflect.MethodAccessorGenerator.nonPrimitiveParametersBaseIdx:S
64: iconst_0
istore 15
start local 15 65: goto 71
66: StackMap locals: int
StackMap stack:
aload 3
iload 15
aaload
astore 16
start local 16 67: aload 16
invokestatic jdk.internal.reflect.MethodAccessorGenerator.isPrimitive:(Ljava/lang/Class;)Z
ifne 70
68: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 16
iconst_0
invokestatic jdk.internal.reflect.MethodAccessorGenerator.getClassName:(Ljava/lang/Class;Z)Ljava/lang/String;
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
69: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolClass:(S)V
end local 16 70: StackMap locals:
StackMap stack:
iinc 15 1
StackMap locals:
StackMap stack:
71: iload 15
aload 3
arraylength
if_icmplt 66
end local 15 72: aload 0
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.emitCommonConstantPoolEntries:()V
73: iload 12
ifeq 75
74: aload 0
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.emitBoxingContantPoolEntries:()V
75: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
iload 11
if_icmpeq 79
76: new java.lang.InternalError
dup
new java.lang.StringBuilder
dup
ldc "Adjust this code (cpi = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
77: ldc ", numCPEntries = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 11
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
78: invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
79: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
iconst_1
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
80: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.thisClass:S
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
81: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.superClass:S
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
82: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
iconst_0
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
83: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
iconst_0
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
84: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
iconst_2
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
85: aload 0
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.emitConstructor:()V
86: aload 0
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.emitInvoke:()V
87: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
iconst_0
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
88: aload 10
invokeinterface jdk.internal.reflect.ByteVector.trim:()V
89: aload 10
invokeinterface jdk.internal.reflect.ByteVector.getData:()[B
astore 15
start local 15 90: new jdk.internal.reflect.MethodAccessorGenerator$1
dup
aload 0
aload 13
aload 15
aload 1
invokespecial jdk.internal.reflect.MethodAccessorGenerator$1.<init>:(Ljdk/internal/reflect/MethodAccessorGenerator;Ljava/lang/String;[BLjava/lang/Class;)V
91: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast jdk.internal.reflect.MagicAccessorImpl
areturn
end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 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 92 0 this Ljdk/internal/reflect/MethodAccessorGenerator;
0 92 1 declaringClass Ljava/lang/Class<*>;
0 92 2 name Ljava/lang/String;
0 92 3 parameterTypes [Ljava/lang/Class;
0 92 4 returnType Ljava/lang/Class<*>;
0 92 5 checkedExceptions [Ljava/lang/Class;
0 92 6 modifiers I
0 92 7 isConstructor Z
0 92 8 forSerialization Z
0 92 9 serializationTargetClass Ljava/lang/Class<*>;
1 92 10 vec Ljdk/internal/reflect/ByteVector;
10 92 11 numCPEntries S
11 92 12 usesPrimitives Z
18 92 13 generatedName Ljava/lang/String;
36 92 14 serializationTargetClassIdx S
65 72 15 i I
67 70 16 c Ljava/lang/Class<*>;
90 92 15 bytes [B
Signature: (Ljava/lang/Class<*>;Ljava/lang/String;[Ljava/lang/Class<*>;Ljava/lang/Class<*>;[Ljava/lang/Class<*>;IZZLjava/lang/Class<*>;)Ljdk/internal/reflect/MagicAccessorImpl;
MethodParameters:
Name Flags
declaringClass final
name
parameterTypes
returnType
checkedExceptions
modifiers
isConstructor
forSerialization
serializationTargetClass
private void emitInvoke();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=12, args_size=1
start local 0 0: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
arraylength
ldc 65535
if_icmple 2
1: new java.lang.InternalError
dup
ldc "Can't handle more than 65535 parameters"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new jdk.internal.reflect.ClassFileAssembler
dup
invokespecial jdk.internal.reflect.ClassFileAssembler.<init>:()V
astore 1
start local 1 3: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
ifeq 6
4: aload 1
iconst_2
invokevirtual jdk.internal.reflect.ClassFileAssembler.setMaxLocals:(I)V
5: goto 7
6: StackMap locals: jdk.internal.reflect.ClassFileAssembler
StackMap stack:
aload 1
iconst_3
invokevirtual jdk.internal.reflect.ClassFileAssembler.setMaxLocals:(I)V
7: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 8: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
ifeq 12
9: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.targetClass:S
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_new:(S)V
10: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_dup:()V
11: goto 24
12: StackMap locals: int
StackMap stack:
aload 0
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.isStatic:()Z
ifne 24
13: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_1:()V
14: new jdk.internal.reflect.Label
dup
invokespecial jdk.internal.reflect.Label.<init>:()V
astore 3
start local 3 15: aload 1
aload 3
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_ifnonnull:(Ljdk/internal/reflect/Label;)V
16: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.nullPointerClass:S
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_new:(S)V
17: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_dup:()V
18: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.nullPointerCtorIdx:S
iconst_0
iconst_0
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokespecial:(SII)V
19: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_athrow:()V
20: aload 3
invokevirtual jdk.internal.reflect.Label.bind:()V
21: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.getLength:()S
istore 2
22: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_1:()V
23: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.targetClass:S
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_checkcast:(S)V
end local 3 24: StackMap locals:
StackMap stack:
new jdk.internal.reflect.Label
dup
invokespecial jdk.internal.reflect.Label.<init>:()V
astore 3
start local 3 25: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
arraylength
ifne 31
26: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
ifeq 29
27: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_1:()V
28: goto 30
29: StackMap locals: jdk.internal.reflect.Label
StackMap stack:
aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_2:()V
30: StackMap locals:
StackMap stack:
aload 1
aload 3
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_ifnull:(Ljdk/internal/reflect/Label;)V
31: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
ifeq 34
32: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_1:()V
33: goto 35
34: StackMap locals:
StackMap stack:
aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_2:()V
35: StackMap locals:
StackMap stack:
aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_arraylength:()V
36: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
arraylength
i2s
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_sipush:(S)V
37: aload 1
aload 3
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_if_icmpeq:(Ljdk/internal/reflect/Label;)V
38: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.illegalArgumentClass:S
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_new:(S)V
39: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_dup:()V
40: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.illegalArgumentCtorIdx:S
iconst_0
iconst_0
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokespecial:(SII)V
41: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_athrow:()V
42: aload 3
invokevirtual jdk.internal.reflect.Label.bind:()V
43: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.nonPrimitiveParametersBaseIdx:S
istore 4
start local 4 44: aconst_null
astore 5
start local 5 45: iconst_1
istore 6
start local 6 46: iconst_0
istore 7
start local 7 47: goto 108
48: StackMap locals: jdk.internal.reflect.MethodAccessorGenerator jdk.internal.reflect.ClassFileAssembler int jdk.internal.reflect.Label int jdk.internal.reflect.Label int int
StackMap stack:
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
iload 7
aaload
astore 8
start local 8 49: iload 6
aload 0
aload 8
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.typeSizeInStackSlots:(Ljava/lang/Class;)I
i2b
iadd
i2b
istore 6
50: aload 5
ifnull 53
51: aload 5
invokevirtual jdk.internal.reflect.Label.bind:()V
52: aconst_null
astore 5
53: StackMap locals: java.lang.Class
StackMap stack:
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
ifeq 56
54: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_1:()V
55: goto 57
56: StackMap locals:
StackMap stack:
aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_2:()V
57: StackMap locals:
StackMap stack:
aload 1
iload 7
i2s
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_sipush:(S)V
58: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aaload:()V
59: aload 8
invokestatic jdk.internal.reflect.MethodAccessorGenerator.isPrimitive:(Ljava/lang/Class;)Z
ifeq 105
60: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
ifeq 63
61: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_astore_2:()V
62: goto 64
63: StackMap locals:
StackMap stack:
aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_astore_3:()V
64: StackMap locals:
StackMap stack:
aconst_null
astore 9
start local 9 65: new jdk.internal.reflect.Label
dup
invokespecial jdk.internal.reflect.Label.<init>:()V
astore 5
66: iconst_0
istore 10
start local 10 67: goto 94
68: StackMap locals: jdk.internal.reflect.Label int
StackMap stack:
getstatic jdk.internal.reflect.MethodAccessorGenerator.primitiveTypes:[Ljava/lang/Class;
iload 10
aaload
astore 11
start local 11 69: aload 11
aload 8
invokestatic jdk.internal.reflect.MethodAccessorGenerator.canWidenTo:(Ljava/lang/Class;Ljava/lang/Class;)Z
ifeq 93
70: aload 9
ifnull 72
71: aload 9
invokevirtual jdk.internal.reflect.Label.bind:()V
72: StackMap locals: java.lang.Class
StackMap stack:
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
ifeq 75
73: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_2:()V
74: goto 76
75: StackMap locals:
StackMap stack:
aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_3:()V
76: StackMap locals:
StackMap stack:
aload 1
aload 0
aload 11
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.indexForPrimitiveType:(Ljava/lang/Class;)S
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_instanceof:(S)V
77: new jdk.internal.reflect.Label
dup
invokespecial jdk.internal.reflect.Label.<init>:()V
astore 9
78: aload 1
aload 9
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_ifeq:(Ljdk/internal/reflect/Label;)V
79: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
ifeq 82
80: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_2:()V
81: goto 83
82: StackMap locals:
StackMap stack:
aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_3:()V
83: StackMap locals:
StackMap stack:
aload 1
aload 0
aload 11
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.indexForPrimitiveType:(Ljava/lang/Class;)S
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_checkcast:(S)V
84: aload 1
aload 0
aload 11
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.unboxingMethodForPrimitiveType:(Ljava/lang/Class;)S
85: iconst_0
86: aload 0
aload 11
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.typeSizeInStackSlots:(Ljava/lang/Class;)I
87: invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokevirtual:(SII)V
88: aload 1
89: aload 11
90: aload 8
91: invokestatic jdk.internal.reflect.MethodAccessorGenerator.emitWideningBytecodeForPrimitiveConversion:(Ljdk/internal/reflect/ClassFileAssembler;Ljava/lang/Class;Ljava/lang/Class;)V
92: aload 1
aload 5
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_goto:(Ljdk/internal/reflect/Label;)V
end local 11 93: StackMap locals:
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
94: iload 10
getstatic jdk.internal.reflect.MethodAccessorGenerator.primitiveTypes:[Ljava/lang/Class;
arraylength
if_icmplt 68
end local 10 95: aload 9
ifnonnull 99
96: new java.lang.InternalError
dup
97: ldc "Must have found at least identity conversion"
98: invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
99: StackMap locals:
StackMap stack:
aload 9
invokevirtual jdk.internal.reflect.Label.bind:()V
100: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.illegalArgumentClass:S
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_new:(S)V
101: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_dup:()V
102: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.illegalArgumentCtorIdx:S
iconst_0
iconst_0
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokespecial:(SII)V
103: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_athrow:()V
end local 9 104: goto 107
105: StackMap locals:
StackMap stack:
aload 1
iload 4
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_checkcast:(S)V
106: iload 4
iconst_2
invokestatic jdk.internal.reflect.MethodAccessorGenerator.add:(SS)S
istore 4
end local 8 107: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
108: iload 7
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
arraylength
if_icmplt 48
end local 7 109: aload 5
ifnull 111
110: aload 5
invokevirtual jdk.internal.reflect.Label.bind:()V
111: StackMap locals:
StackMap stack:
aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.getLength:()S
istore 7
start local 7 112: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
ifeq 115
113: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.targetMethodRef:S
iload 6
iconst_0
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokespecial:(SII)V
114: goto 135
115: StackMap locals: int
StackMap stack:
aload 0
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.isStatic:()Z
ifeq 121
116: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.targetMethodRef:S
117: iload 6
118: aload 0
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.typeSizeInStackSlots:(Ljava/lang/Class;)I
119: invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokestatic:(SII)V
120: goto 135
121: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.isInterface:()Z
ifeq 131
122: aload 0
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.isPrivate:()Z
ifeq 125
123: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.targetMethodRef:S
iload 6
iconst_0
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokespecial:(SII)V
124: goto 135
125: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.targetMethodRef:S
126: iload 6
127: iload 6
128: aload 0
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.typeSizeInStackSlots:(Ljava/lang/Class;)I
129: invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokeinterface:(SIBI)V
130: goto 135
131: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.targetMethodRef:S
132: iload 6
133: aload 0
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.typeSizeInStackSlots:(Ljava/lang/Class;)I
134: invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokevirtual:(SII)V
135: StackMap locals:
StackMap stack:
aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.getLength:()S
istore 8
start local 8 136: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
ifne 145
137: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
invokestatic jdk.internal.reflect.MethodAccessorGenerator.isPrimitive:(Ljava/lang/Class;)Z
ifeq 143
138: aload 1
aload 0
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.boxingMethodForPrimitiveType:(Ljava/lang/Class;)S
139: aload 0
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
invokevirtual jdk.internal.reflect.MethodAccessorGenerator.typeSizeInStackSlots:(Ljava/lang/Class;)I
140: iconst_0
141: invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokestatic:(SII)V
142: goto 145
StackMap locals: int
StackMap stack:
143: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
getstatic java.lang.Void.TYPE:Ljava/lang/Class;
if_acmpne 145
144: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aconst_null:()V
145: StackMap locals:
StackMap stack:
aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_areturn:()V
146: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.getLength:()S
istore 9
start local 9 147: aload 1
iconst_1
invokevirtual jdk.internal.reflect.ClassFileAssembler.setStack:(I)V
148: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.toStringIdx:S
iconst_0
iconst_1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokespecial:(SII)V
149: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.illegalArgumentClass:S
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_new:(S)V
150: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_dup_x1:()V
151: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_swap:()V
152: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.illegalArgumentStringCtorIdx:S
iconst_1
iconst_0
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokespecial:(SII)V
153: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_athrow:()V
154: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.getLength:()S
istore 10
start local 10 155: aload 1
iconst_1
invokevirtual jdk.internal.reflect.ClassFileAssembler.setStack:(I)V
156: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.invocationTargetClass:S
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_new:(S)V
157: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_dup_x1:()V
158: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_swap:()V
159: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.invocationTargetCtorIdx:S
iconst_1
iconst_0
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokespecial:(SII)V
160: aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_athrow:()V
161: new jdk.internal.reflect.ClassFileAssembler
dup
invokespecial jdk.internal.reflect.ClassFileAssembler.<init>:()V
astore 11
start local 11 162: aload 11
iload 2
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
163: aload 11
iload 7
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
164: aload 11
iload 9
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
165: aload 11
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.classCastClass:S
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
166: aload 11
iload 2
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
167: aload 11
iload 7
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
168: aload 11
iload 9
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
169: aload 11
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.nullPointerClass:S
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
170: aload 11
iload 7
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
171: aload 11
iload 8
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
172: aload 11
iload 10
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
173: aload 11
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.throwableClass:S
invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
174: aload 0
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.invokeIdx:S
aload 1
invokevirtual jdk.internal.reflect.ClassFileAssembler.getMaxLocals:()S
aload 1
aload 11
175: iconst_1
newarray 9
dup
iconst_0
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.invocationTargetClass:S
sastore
176: invokevirtual jdk.internal.reflect.MethodAccessorGenerator.emitMethod:(SILjdk/internal/reflect/ClassFileAssembler;Ljdk/internal/reflect/ClassFileAssembler;[S)V
177: return
end local 11 end local 10 end local 9 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 178 0 this Ljdk/internal/reflect/MethodAccessorGenerator;
3 178 1 cb Ljdk/internal/reflect/ClassFileAssembler;
8 178 2 illegalArgStartPC S
15 24 3 l Ljdk/internal/reflect/Label;
25 178 3 successLabel Ljdk/internal/reflect/Label;
44 178 4 paramTypeCPIdx S
45 178 5 nextParamLabel Ljdk/internal/reflect/Label;
46 178 6 count B
47 109 7 i I
49 107 8 paramType Ljava/lang/Class<*>;
65 104 9 l Ljdk/internal/reflect/Label;
67 95 10 j I
69 93 11 c Ljava/lang/Class<*>;
112 178 7 invokeStartPC S
136 178 8 invokeEndPC S
147 178 9 classCastHandler S
155 178 10 invocationTargetHandler S
162 178 11 exc Ljdk/internal/reflect/ClassFileAssembler;
private boolean usesPrimitiveTypes();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
istore 1
start local 1 3: goto 7
4: StackMap locals: int
StackMap stack:
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
iload 1
aaload
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 6
5: iconst_1
ireturn
6: StackMap locals:
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
7: iload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
arraylength
if_icmplt 4
end local 1 8: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljdk/internal/reflect/MethodAccessorGenerator;
3 8 1 i I
private int numNonPrimitiveParameterTypes();
descriptor: ()I
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 6
3: StackMap locals: int int
StackMap stack:
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
iload 2
aaload
invokevirtual java.lang.Class.isPrimitive:()Z
ifne 5
4: iinc 1 1
5: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
6: iload 2
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
arraylength
if_icmplt 3
end local 2 7: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljdk/internal/reflect/MethodAccessorGenerator;
1 8 1 num I
2 7 2 i I
private boolean isInterface();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.declaringClass:Ljava/lang/Class;
invokevirtual java.lang.Class.isInterface:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/reflect/MethodAccessorGenerator;
private java.lang.String buildInternalSignature();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 1: aload 1
ldc "("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
2: iconst_0
istore 2
start local 2 3: goto 6
4: StackMap locals: java.lang.StringBuilder int
StackMap stack:
aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
iload 2
aaload
iconst_1
invokestatic jdk.internal.reflect.MethodAccessorGenerator.getClassName:(Ljava/lang/Class;Z)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
5: iinc 2 1
StackMap locals:
StackMap stack:
6: iload 2
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
arraylength
if_icmplt 4
end local 2 7: aload 1
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
8: aload 1
aload 0
getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
iconst_1
invokestatic jdk.internal.reflect.MethodAccessorGenerator.getClassName:(Ljava/lang/Class;Z)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
9: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljdk/internal/reflect/MethodAccessorGenerator;
1 10 1 sb Ljava/lang/StringBuilder;
3 7 2 i I
private static synchronized java.lang.String generateName(boolean, boolean);
descriptor: (ZZ)Ljava/lang/String;
flags: (0x002a) ACC_PRIVATE, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: iload 0
ifeq 6
1: iload 1
ifeq 4
2: getstatic jdk.internal.reflect.MethodAccessorGenerator.serializationConstructorSymnum:I
iconst_1
iadd
dup
putstatic jdk.internal.reflect.MethodAccessorGenerator.serializationConstructorSymnum:I
istore 2
start local 2 3: new java.lang.StringBuilder
dup
ldc "jdk/internal/reflect/GeneratedSerializationConstructorAccessor"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 4: StackMap locals:
StackMap stack:
getstatic jdk.internal.reflect.MethodAccessorGenerator.constructorSymnum:I
iconst_1
iadd
dup
putstatic jdk.internal.reflect.MethodAccessorGenerator.constructorSymnum:I
istore 2
start local 2 5: new java.lang.StringBuilder
dup
ldc "jdk/internal/reflect/GeneratedConstructorAccessor"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 6: StackMap locals:
StackMap stack:
getstatic jdk.internal.reflect.MethodAccessorGenerator.methodSymnum:I
iconst_1
iadd
dup
putstatic jdk.internal.reflect.MethodAccessorGenerator.methodSymnum:I
istore 2
start local 2 7: new java.lang.StringBuilder
dup
ldc "jdk/internal/reflect/GeneratedMethodAccessor"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 isConstructor Z
0 8 1 forSerialization Z
3 4 2 num I
5 6 2 num I
7 8 2 num I
MethodParameters:
Name Flags
isConstructor
forSerialization
}
SourceFile: "MethodAccessorGenerator.java"
NestMembers:
jdk.internal.reflect.MethodAccessorGenerator$1
InnerClasses:
jdk.internal.reflect.MethodAccessorGenerator$1