public class org.objectweb.asm.commons.LocalVariablesSorter extends org.objectweb.asm.MethodVisitor
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.objectweb.asm.commons.LocalVariablesSorter
super_class: org.objectweb.asm.MethodVisitor
{
private static final org.objectweb.asm.Type OBJECT_TYPE;
descriptor: Lorg/objectweb/asm/Type;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private int[] mapping;
descriptor: [I
flags: (0x0002) ACC_PRIVATE
private java.lang.Object[] newLocals;
descriptor: [Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
protected final int firstLocal;
descriptor: I
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected int nextLocal;
descriptor: I
flags: (0x0004) ACC_PROTECTED
private boolean changed;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc "java/lang/Object"
invokestatic org.objectweb.asm.Type.getObjectType:(Ljava/lang/String;)Lorg/objectweb/asm/Type;
1: putstatic org.objectweb.asm.commons.LocalVariablesSorter.OBJECT_TYPE:Lorg/objectweb/asm/Type;
2: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(int, java.lang.String, org.objectweb.asm.MethodVisitor);
descriptor: (ILjava/lang/String;Lorg/objectweb/asm/MethodVisitor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
ldc 262144
iload 1
aload 2
aload 3
invokespecial org.objectweb.asm.commons.LocalVariablesSorter.<init>:(IILjava/lang/String;Lorg/objectweb/asm/MethodVisitor;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/objectweb/asm/commons/LocalVariablesSorter;
0 2 1 access I
0 2 2 desc Ljava/lang/String;
0 2 3 mv Lorg/objectweb/asm/MethodVisitor;
MethodParameters:
Name Flags
access final
desc final
mv final
protected void <init>(int, int, java.lang.String, org.objectweb.asm.MethodVisitor);
descriptor: (IILjava/lang/String;Lorg/objectweb/asm/MethodVisitor;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iload 1
aload 4
invokespecial org.objectweb.asm.MethodVisitor.<init>:(ILorg/objectweb/asm/MethodVisitor;)V
1: aload 0
bipush 40
newarray 10
putfield org.objectweb.asm.commons.LocalVariablesSorter.mapping:[I
2: aload 0
bipush 20
anewarray java.lang.Object
putfield org.objectweb.asm.commons.LocalVariablesSorter.newLocals:[Ljava/lang/Object;
3: aload 3
invokestatic org.objectweb.asm.Type.getArgumentTypes:(Ljava/lang/String;)[Lorg/objectweb/asm/Type;
astore 5
start local 5 4: aload 0
bipush 8
iload 2
iand
ifne 5
iconst_1
goto 6
StackMap locals: org.objectweb.asm.commons.LocalVariablesSorter int int java.lang.String org.objectweb.asm.MethodVisitor org.objectweb.asm.Type[]
StackMap stack: org.objectweb.asm.commons.LocalVariablesSorter
5: iconst_0
StackMap locals: org.objectweb.asm.commons.LocalVariablesSorter int int java.lang.String org.objectweb.asm.MethodVisitor org.objectweb.asm.Type[]
StackMap stack: org.objectweb.asm.commons.LocalVariablesSorter int
6: putfield org.objectweb.asm.commons.LocalVariablesSorter.nextLocal:I
7: iconst_0
istore 6
start local 6 8: goto 11
9: StackMap locals: int
StackMap stack:
aload 0
dup
getfield org.objectweb.asm.commons.LocalVariablesSorter.nextLocal:I
aload 5
iload 6
aaload
invokevirtual org.objectweb.asm.Type.getSize:()I
iadd
putfield org.objectweb.asm.commons.LocalVariablesSorter.nextLocal:I
10: iinc 6 1
StackMap locals:
StackMap stack:
11: iload 6
aload 5
arraylength
if_icmplt 9
end local 6 12: aload 0
aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.nextLocal:I
putfield org.objectweb.asm.commons.LocalVariablesSorter.firstLocal:I
13: return
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 14 0 this Lorg/objectweb/asm/commons/LocalVariablesSorter;
0 14 1 api I
0 14 2 access I
0 14 3 desc Ljava/lang/String;
0 14 4 mv Lorg/objectweb/asm/MethodVisitor;
4 14 5 args [Lorg/objectweb/asm/Type;
8 12 6 i I
MethodParameters:
Name Flags
api final
access final
desc final
mv final
public void visitVarInsn(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 1
lookupswitch { // 8
21: 7
22: 1
23: 5
24: 3
54: 7
55: 1
56: 5
57: 3
default: 9
}
1: StackMap locals:
StackMap stack:
getstatic org.objectweb.asm.Type.LONG_TYPE:Lorg/objectweb/asm/Type;
astore 3
start local 3 2: goto 10
end local 3 3: StackMap locals:
StackMap stack:
getstatic org.objectweb.asm.Type.DOUBLE_TYPE:Lorg/objectweb/asm/Type;
astore 3
start local 3 4: goto 10
end local 3 5: StackMap locals:
StackMap stack:
getstatic org.objectweb.asm.Type.FLOAT_TYPE:Lorg/objectweb/asm/Type;
astore 3
start local 3 6: goto 10
end local 3 7: StackMap locals:
StackMap stack:
getstatic org.objectweb.asm.Type.INT_TYPE:Lorg/objectweb/asm/Type;
astore 3
start local 3 8: goto 10
end local 3 9: StackMap locals:
StackMap stack:
getstatic org.objectweb.asm.commons.LocalVariablesSorter.OBJECT_TYPE:Lorg/objectweb/asm/Type;
astore 3
start local 3 10: StackMap locals: org.objectweb.asm.Type
StackMap stack:
aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.mv:Lorg/objectweb/asm/MethodVisitor;
iload 1
aload 0
iload 2
aload 3
invokevirtual org.objectweb.asm.commons.LocalVariablesSorter.remap:(ILorg/objectweb/asm/Type;)I
invokevirtual org.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
11: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/objectweb/asm/commons/LocalVariablesSorter;
0 12 1 opcode I
0 12 2 var I
2 3 3 type Lorg/objectweb/asm/Type;
4 5 3 type Lorg/objectweb/asm/Type;
6 7 3 type Lorg/objectweb/asm/Type;
8 9 3 type Lorg/objectweb/asm/Type;
10 12 3 type Lorg/objectweb/asm/Type;
MethodParameters:
Name Flags
opcode final
var final
public void visitIincInsn(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.mv:Lorg/objectweb/asm/MethodVisitor;
aload 0
iload 1
getstatic org.objectweb.asm.Type.INT_TYPE:Lorg/objectweb/asm/Type;
invokevirtual org.objectweb.asm.commons.LocalVariablesSorter.remap:(ILorg/objectweb/asm/Type;)I
iload 2
invokevirtual org.objectweb.asm.MethodVisitor.visitIincInsn:(II)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/objectweb/asm/commons/LocalVariablesSorter;
0 2 1 var I
0 2 2 increment I
MethodParameters:
Name Flags
var final
increment final
public void visitMaxs(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.mv:Lorg/objectweb/asm/MethodVisitor;
iload 1
aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.nextLocal:I
invokevirtual org.objectweb.asm.MethodVisitor.visitMaxs:(II)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/objectweb/asm/commons/LocalVariablesSorter;
0 2 1 maxStack I
0 2 2 maxLocals I
MethodParameters:
Name Flags
maxStack final
maxLocals final
public void visitLocalVariable(java.lang.String, java.lang.String, java.lang.String, org.objectweb.asm.Label, org.objectweb.asm.Label, int);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=8, 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
iload 6
aload 2
invokestatic org.objectweb.asm.Type.getType:(Ljava/lang/String;)Lorg/objectweb/asm/Type;
invokevirtual org.objectweb.asm.commons.LocalVariablesSorter.remap:(ILorg/objectweb/asm/Type;)I
istore 7
start local 7 1: aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.mv:Lorg/objectweb/asm/MethodVisitor;
aload 1
aload 2
aload 3
aload 4
aload 5
iload 7
invokevirtual org.objectweb.asm.MethodVisitor.visitLocalVariable:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;I)V
2: return
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 3 0 this Lorg/objectweb/asm/commons/LocalVariablesSorter;
0 3 1 name Ljava/lang/String;
0 3 2 desc Ljava/lang/String;
0 3 3 signature Ljava/lang/String;
0 3 4 start Lorg/objectweb/asm/Label;
0 3 5 end Lorg/objectweb/asm/Label;
0 3 6 index I
1 3 7 newIndex I
MethodParameters:
Name Flags
name final
desc final
signature final
start final
end final
index final
public void visitFrame(int, int, java.lang.Object[], int, java.lang.Object[]);
descriptor: (II[Ljava/lang/Object;I[Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=12, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: iload 1
iconst_m1
if_icmpeq 4
1: new java.lang.IllegalStateException
dup
2: ldc "ClassReader.accept() should be called with EXPAND_FRAMES flag"
3: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.changed:Z
ifne 7
5: aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.mv:Lorg/objectweb/asm/MethodVisitor;
iload 1
iload 2
aload 3
iload 4
aload 5
invokevirtual org.objectweb.asm.MethodVisitor.visitFrame:(II[Ljava/lang/Object;I[Ljava/lang/Object;)V
6: return
7: StackMap locals:
StackMap stack:
aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.newLocals:[Ljava/lang/Object;
arraylength
anewarray java.lang.Object
astore 6
start local 6 8: aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.newLocals:[Ljava/lang/Object;
iconst_0
aload 6
iconst_0
aload 6
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
9: aload 0
aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.newLocals:[Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.LocalVariablesSorter.updateNewLocals:([Ljava/lang/Object;)V
10: iconst_0
istore 7
start local 7 11: iconst_0
istore 8
start local 8 12: goto 37
13: StackMap locals: java.lang.Object[] int int
StackMap stack:
aload 3
iload 8
aaload
astore 9
start local 9 14: aload 9
getstatic org.objectweb.asm.Opcodes.LONG:Ljava/lang/Integer;
if_acmpeq 15
aload 9
getstatic org.objectweb.asm.Opcodes.DOUBLE:Ljava/lang/Integer;
if_acmpne 16
StackMap locals: java.lang.Object
StackMap stack:
15: iconst_2
goto 17
StackMap locals:
StackMap stack:
16: iconst_1
StackMap locals:
StackMap stack: int
17: istore 10
start local 10 18: aload 9
getstatic org.objectweb.asm.Opcodes.TOP:Ljava/lang/Integer;
if_acmpeq 35
19: getstatic org.objectweb.asm.commons.LocalVariablesSorter.OBJECT_TYPE:Lorg/objectweb/asm/Type;
astore 11
start local 11 20: aload 9
getstatic org.objectweb.asm.Opcodes.INTEGER:Ljava/lang/Integer;
if_acmpne 23
21: getstatic org.objectweb.asm.Type.INT_TYPE:Lorg/objectweb/asm/Type;
astore 11
22: goto 34
StackMap locals: int org.objectweb.asm.Type
StackMap stack:
23: aload 9
getstatic org.objectweb.asm.Opcodes.FLOAT:Ljava/lang/Integer;
if_acmpne 26
24: getstatic org.objectweb.asm.Type.FLOAT_TYPE:Lorg/objectweb/asm/Type;
astore 11
25: goto 34
StackMap locals:
StackMap stack:
26: aload 9
getstatic org.objectweb.asm.Opcodes.LONG:Ljava/lang/Integer;
if_acmpne 29
27: getstatic org.objectweb.asm.Type.LONG_TYPE:Lorg/objectweb/asm/Type;
astore 11
28: goto 34
StackMap locals:
StackMap stack:
29: aload 9
getstatic org.objectweb.asm.Opcodes.DOUBLE:Ljava/lang/Integer;
if_acmpne 32
30: getstatic org.objectweb.asm.Type.DOUBLE_TYPE:Lorg/objectweb/asm/Type;
astore 11
31: goto 34
StackMap locals:
StackMap stack:
32: aload 9
instanceof java.lang.String
ifeq 34
33: aload 9
checkcast java.lang.String
invokestatic org.objectweb.asm.Type.getObjectType:(Ljava/lang/String;)Lorg/objectweb/asm/Type;
astore 11
34: StackMap locals:
StackMap stack:
aload 0
aload 0
iload 7
aload 11
invokevirtual org.objectweb.asm.commons.LocalVariablesSorter.remap:(ILorg/objectweb/asm/Type;)I
aload 9
invokevirtual org.objectweb.asm.commons.LocalVariablesSorter.setFrameLocal:(ILjava/lang/Object;)V
end local 11 35: StackMap locals:
StackMap stack:
iload 7
iload 10
iadd
istore 7
end local 10 end local 9 36: iinc 8 1
StackMap locals:
StackMap stack:
37: iload 8
iload 2
if_icmplt 13
38: iconst_0
istore 7
39: iconst_0
istore 8
40: iconst_0
istore 9
start local 9 41: goto 51
42: StackMap locals: int
StackMap stack:
aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.newLocals:[Ljava/lang/Object;
iload 7
iinc 7 1
aaload
astore 10
start local 10 43: aload 10
ifnull 49
aload 10
getstatic org.objectweb.asm.Opcodes.TOP:Ljava/lang/Integer;
if_acmpeq 49
44: aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.newLocals:[Ljava/lang/Object;
iload 9
aload 10
aastore
45: iload 9
iconst_1
iadd
istore 8
46: aload 10
getstatic org.objectweb.asm.Opcodes.LONG:Ljava/lang/Integer;
if_acmpeq 47
aload 10
getstatic org.objectweb.asm.Opcodes.DOUBLE:Ljava/lang/Integer;
if_acmpne 50
47: StackMap locals: java.lang.Object
StackMap stack:
iinc 7 1
48: goto 50
49: StackMap locals:
StackMap stack:
aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.newLocals:[Ljava/lang/Object;
iload 9
getstatic org.objectweb.asm.Opcodes.TOP:Ljava/lang/Integer;
aastore
end local 10 50: StackMap locals:
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
51: iload 7
aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.newLocals:[Ljava/lang/Object;
arraylength
if_icmplt 42
end local 9 52: aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.mv:Lorg/objectweb/asm/MethodVisitor;
iload 1
iload 8
aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.newLocals:[Ljava/lang/Object;
iload 4
aload 5
invokevirtual org.objectweb.asm.MethodVisitor.visitFrame:(II[Ljava/lang/Object;I[Ljava/lang/Object;)V
53: aload 0
aload 6
putfield org.objectweb.asm.commons.LocalVariablesSorter.newLocals:[Ljava/lang/Object;
54: return
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 55 0 this Lorg/objectweb/asm/commons/LocalVariablesSorter;
0 55 1 type I
0 55 2 nLocal I
0 55 3 local [Ljava/lang/Object;
0 55 4 nStack I
0 55 5 stack [Ljava/lang/Object;
8 55 6 oldLocals [Ljava/lang/Object;
11 55 7 index I
12 55 8 number I
14 36 9 t Ljava/lang/Object;
18 36 10 size I
20 35 11 typ Lorg/objectweb/asm/Type;
41 52 9 i I
43 50 10 t Ljava/lang/Object;
MethodParameters:
Name Flags
type final
nLocal final
local final
nStack final
stack final
public int newLocal(org.objectweb.asm.Type);
descriptor: (Lorg/objectweb/asm/Type;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.objectweb.asm.Type.getSort:()I
tableswitch { // 1 - 9
1: 1
2: 1
3: 1
4: 1
5: 1
6: 3
7: 5
8: 7
9: 9
default: 11
}
1: StackMap locals:
StackMap stack:
getstatic org.objectweb.asm.Opcodes.INTEGER:Ljava/lang/Integer;
astore 2
start local 2 2: goto 12
end local 2 3: StackMap locals:
StackMap stack:
getstatic org.objectweb.asm.Opcodes.FLOAT:Ljava/lang/Integer;
astore 2
start local 2 4: goto 12
end local 2 5: StackMap locals:
StackMap stack:
getstatic org.objectweb.asm.Opcodes.LONG:Ljava/lang/Integer;
astore 2
start local 2 6: goto 12
end local 2 7: StackMap locals:
StackMap stack:
getstatic org.objectweb.asm.Opcodes.DOUBLE:Ljava/lang/Integer;
astore 2
start local 2 8: goto 12
end local 2 9: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.objectweb.asm.Type.getDescriptor:()Ljava/lang/String;
astore 2
start local 2 10: goto 12
end local 2 11: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.objectweb.asm.Type.getInternalName:()Ljava/lang/String;
astore 2
start local 2 12: StackMap locals: java.lang.Object
StackMap stack:
aload 0
aload 1
invokevirtual org.objectweb.asm.commons.LocalVariablesSorter.newLocalMapping:(Lorg/objectweb/asm/Type;)I
istore 3
start local 3 13: aload 0
iload 3
aload 1
invokevirtual org.objectweb.asm.commons.LocalVariablesSorter.setLocalType:(ILorg/objectweb/asm/Type;)V
14: aload 0
iload 3
aload 2
invokevirtual org.objectweb.asm.commons.LocalVariablesSorter.setFrameLocal:(ILjava/lang/Object;)V
15: aload 0
iconst_1
putfield org.objectweb.asm.commons.LocalVariablesSorter.changed:Z
16: iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/objectweb/asm/commons/LocalVariablesSorter;
0 17 1 type Lorg/objectweb/asm/Type;
2 3 2 t Ljava/lang/Object;
4 5 2 t Ljava/lang/Object;
6 7 2 t Ljava/lang/Object;
8 9 2 t Ljava/lang/Object;
10 11 2 t Ljava/lang/Object;
12 17 2 t Ljava/lang/Object;
13 17 3 local I
MethodParameters:
Name Flags
type final
protected void updateNewLocals(java.lang.Object[]);
descriptor: ([Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/objectweb/asm/commons/LocalVariablesSorter;
0 1 1 newLocals [Ljava/lang/Object;
MethodParameters:
Name Flags
newLocals
protected void setLocalType(int, org.objectweb.asm.Type);
descriptor: (ILorg/objectweb/asm/Type;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=3, args_size=3
start local 0 start local 1 start local 2 0: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/objectweb/asm/commons/LocalVariablesSorter;
0 1 1 local I
0 1 2 type Lorg/objectweb/asm/Type;
MethodParameters:
Name Flags
local final
type final
private void setFrameLocal(int, java.lang.Object);
descriptor: (ILjava/lang/Object;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.newLocals:[Ljava/lang/Object;
arraylength
istore 3
start local 3 1: iload 1
iload 3
if_icmplt 5
2: iconst_2
iload 3
imul
iload 1
iconst_1
iadd
invokestatic java.lang.Math.max:(II)I
anewarray java.lang.Object
astore 4
start local 4 3: aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.newLocals:[Ljava/lang/Object;
iconst_0
aload 4
iconst_0
iload 3
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
4: aload 0
aload 4
putfield org.objectweb.asm.commons.LocalVariablesSorter.newLocals:[Ljava/lang/Object;
end local 4 5: StackMap locals: int
StackMap stack:
aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.newLocals:[Ljava/lang/Object;
iload 1
aload 2
aastore
6: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/objectweb/asm/commons/LocalVariablesSorter;
0 7 1 local I
0 7 2 type Ljava/lang/Object;
1 7 3 l I
3 5 4 a [Ljava/lang/Object;
MethodParameters:
Name Flags
local final
type final
private int remap(int, org.objectweb.asm.Type);
descriptor: (ILorg/objectweb/asm/Type;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iload 1
aload 2
invokevirtual org.objectweb.asm.Type.getSize:()I
iadd
aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.firstLocal:I
if_icmpgt 2
1: iload 1
ireturn
2: StackMap locals:
StackMap stack:
iconst_2
iload 1
imul
aload 2
invokevirtual org.objectweb.asm.Type.getSize:()I
iadd
iconst_1
isub
istore 3
start local 3 3: aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.mapping:[I
arraylength
istore 4
start local 4 4: iload 3
iload 4
if_icmplt 8
5: iconst_2
iload 4
imul
iload 3
iconst_1
iadd
invokestatic java.lang.Math.max:(II)I
newarray 10
astore 5
start local 5 6: aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.mapping:[I
iconst_0
aload 5
iconst_0
iload 4
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
7: aload 0
aload 5
putfield org.objectweb.asm.commons.LocalVariablesSorter.mapping:[I
end local 5 8: StackMap locals: int int
StackMap stack:
aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.mapping:[I
iload 3
iaload
istore 5
start local 5 9: iload 5
ifne 14
10: aload 0
aload 2
invokevirtual org.objectweb.asm.commons.LocalVariablesSorter.newLocalMapping:(Lorg/objectweb/asm/Type;)I
istore 5
11: aload 0
iload 5
aload 2
invokevirtual org.objectweb.asm.commons.LocalVariablesSorter.setLocalType:(ILorg/objectweb/asm/Type;)V
12: aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.mapping:[I
iload 3
iload 5
iconst_1
iadd
iastore
13: goto 15
14: StackMap locals: int
StackMap stack:
iinc 5 -1
15: StackMap locals:
StackMap stack:
iload 5
iload 1
if_icmpeq 17
16: aload 0
iconst_1
putfield org.objectweb.asm.commons.LocalVariablesSorter.changed:Z
17: StackMap locals:
StackMap stack:
iload 5
ireturn
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 18 0 this Lorg/objectweb/asm/commons/LocalVariablesSorter;
0 18 1 var I
0 18 2 type Lorg/objectweb/asm/Type;
3 18 3 key I
4 18 4 size I
6 8 5 newMapping [I
9 18 5 value I
MethodParameters:
Name Flags
var final
type final
protected int newLocalMapping(org.objectweb.asm.Type);
descriptor: (Lorg/objectweb/asm/Type;)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.objectweb.asm.commons.LocalVariablesSorter.nextLocal:I
istore 2
start local 2 1: aload 0
dup
getfield org.objectweb.asm.commons.LocalVariablesSorter.nextLocal:I
aload 1
invokevirtual org.objectweb.asm.Type.getSize:()I
iadd
putfield org.objectweb.asm.commons.LocalVariablesSorter.nextLocal:I
2: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/objectweb/asm/commons/LocalVariablesSorter;
0 3 1 type Lorg/objectweb/asm/Type;
1 3 2 local I
MethodParameters:
Name Flags
type final
}
SourceFile: "LocalVariablesSorter.java"