class org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer extends org.glassfish.pfl.objectweb.asm.MethodAdapter
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer
super_class: org.glassfish.pfl.objectweb.asm.MethodAdapter
{
private final int access;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String name;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String desc;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.glassfish.pfl.objectweb.asm.MethodVisitor lmv;
descriptor: Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int identVal;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Set<java.lang.Integer> returnOpcodes;
descriptor: Ljava/util/Set;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Set<Ljava/lang/Integer;>;
private final org.glassfish.pfl.objectweb.asm.Label start;
descriptor: Lorg/glassfish/pfl/objectweb/asm/Label;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.glassfish.pfl.objectweb.asm.tree.LabelNode startNode;
descriptor: Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.glassfish.pfl.objectweb.asm.Label excHandler;
descriptor: Lorg/glassfish/pfl/objectweb/asm/Label;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.glassfish.pfl.objectweb.asm.tree.LabelNode excHandlerNode;
descriptor: Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.glassfish.pfl.objectweb.asm.Label end;
descriptor: Lorg/glassfish/pfl/objectweb/asm/Label;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.glassfish.pfl.objectweb.asm.tree.LabelNode endNode;
descriptor: Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.glassfish.pfl.objectweb.asm.Label afterExcStore;
descriptor: Lorg/glassfish/pfl/objectweb/asm/Label;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.glassfish.pfl.objectweb.asm.tree.LabelNode afterExcStoreNode;
descriptor: Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.glassfish.pfl.objectweb.asm.commons.LocalVariablesSorter lvs;
descriptor: Lorg/glassfish/pfl/objectweb/asm/commons/LocalVariablesSorter;
flags: (0x0002) ACC_PRIVATE
private org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode __result;
descriptor: Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
flags: (0x0002) ACC_PRIVATE
private org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode __mm;
descriptor: Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
flags: (0x0002) ACC_PRIVATE
private org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode __exc;
descriptor: Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
flags: (0x0002) ACC_PRIVATE
final org.glassfish.pfl.tf.tools.enhancer.ClassTracer this$0;
descriptor: Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void setLocalVariablesSorter(org.glassfish.pfl.objectweb.asm.commons.LocalVariablesSorter);
descriptor: (Lorg/glassfish/pfl/objectweb/asm/commons/LocalVariablesSorter;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lvs:Lorg/glassfish/pfl/objectweb/asm/commons/LocalVariablesSorter;
1: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.desc:Ljava/lang/String;
invokestatic org.glassfish.pfl.objectweb.asm.Type.getReturnType:(Ljava/lang/String;)Lorg/glassfish/pfl/objectweb/asm/Type;
astore 2
start local 2 2: aload 2
getstatic org.glassfish.pfl.objectweb.asm.Type.VOID_TYPE:Lorg/glassfish/pfl/objectweb/asm/Type;
invokevirtual org.glassfish.pfl.objectweb.asm.Type.equals:(Ljava/lang/Object;)Z
ifne 8
3: aload 0
new org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode
dup
ldc "__$result$__"
4: aload 2
invokevirtual org.glassfish.pfl.objectweb.asm.Type.getDescriptor:()Ljava/lang/String;
5: aconst_null
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.startNode:Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.endNode:Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;
aload 1
aload 2
invokevirtual org.glassfish.pfl.objectweb.asm.commons.LocalVariablesSorter.newLocal:(Lorg/glassfish/pfl/objectweb/asm/Type;)I
invokespecial org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;I)V
6: putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__result:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
7: goto 9
8: StackMap locals: org.glassfish.pfl.objectweb.asm.Type
StackMap stack:
aload 0
aconst_null
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__result:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
9: StackMap locals:
StackMap stack:
ldc Lorg/glassfish/pfl/tf/spi/MethodMonitor;
invokestatic org.glassfish.pfl.objectweb.asm.Type.getType:(Ljava/lang/Class;)Lorg/glassfish/pfl/objectweb/asm/Type;
astore 2
10: aload 0
new org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode
dup
ldc "__$mm$__"
11: aload 2
invokevirtual org.glassfish.pfl.objectweb.asm.Type.getDescriptor:()Ljava/lang/String;
12: aconst_null
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.startNode:Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.endNode:Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;
aload 1
aload 2
invokevirtual org.glassfish.pfl.objectweb.asm.commons.LocalVariablesSorter.newLocal:(Lorg/glassfish/pfl/objectweb/asm/Type;)I
invokespecial org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;I)V
13: putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__mm:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
14: ldc Ljava/lang/Throwable;
invokestatic org.glassfish.pfl.objectweb.asm.Type.getType:(Ljava/lang/Class;)Lorg/glassfish/pfl/objectweb/asm/Type;
astore 2
15: aload 0
new org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode
dup
ldc "__$exc$__"
16: aload 2
invokevirtual org.glassfish.pfl.objectweb.asm.Type.getDescriptor:()Ljava/lang/String;
17: aconst_null
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.excHandlerNode:Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.endNode:Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;
aload 1
aload 2
invokevirtual org.glassfish.pfl.objectweb.asm.commons.LocalVariablesSorter.newLocal:(Lorg/glassfish/pfl/objectweb/asm/Type;)I
invokespecial org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;I)V
18: putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__exc:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
19: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 20 1 lvs Lorg/glassfish/pfl/objectweb/asm/commons/LocalVariablesSorter;
2 20 2 type Lorg/glassfish/pfl/objectweb/asm/Type;
MethodParameters:
Name Flags
lvs final
public void <init>(org.glassfish.pfl.tf.tools.enhancer.ClassTracer, int, java.lang.String, java.lang.String, org.glassfish.pfl.objectweb.asm.MethodVisitor);
descriptor: (Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;ILjava/lang/String;Ljava/lang/String;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=6
start local 0 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
1: aload 0
aload 5
invokespecial org.glassfish.pfl.objectweb.asm.MethodAdapter.<init>:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;)V
2: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.returnOpcodes:Ljava/util/Set;
3: aload 0
new org.glassfish.pfl.objectweb.asm.Label
dup
invokespecial org.glassfish.pfl.objectweb.asm.Label.<init>:()V
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.start:Lorg/glassfish/pfl/objectweb/asm/Label;
4: aload 0
new org.glassfish.pfl.objectweb.asm.tree.LabelNode
dup
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.start:Lorg/glassfish/pfl/objectweb/asm/Label;
invokespecial org.glassfish.pfl.objectweb.asm.tree.LabelNode.<init>:(Lorg/glassfish/pfl/objectweb/asm/Label;)V
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.startNode:Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;
5: aload 0
new org.glassfish.pfl.objectweb.asm.Label
dup
invokespecial org.glassfish.pfl.objectweb.asm.Label.<init>:()V
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.excHandler:Lorg/glassfish/pfl/objectweb/asm/Label;
6: aload 0
new org.glassfish.pfl.objectweb.asm.tree.LabelNode
dup
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.excHandler:Lorg/glassfish/pfl/objectweb/asm/Label;
invokespecial org.glassfish.pfl.objectweb.asm.tree.LabelNode.<init>:(Lorg/glassfish/pfl/objectweb/asm/Label;)V
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.excHandlerNode:Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;
7: aload 0
new org.glassfish.pfl.objectweb.asm.Label
dup
invokespecial org.glassfish.pfl.objectweb.asm.Label.<init>:()V
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.end:Lorg/glassfish/pfl/objectweb/asm/Label;
8: aload 0
new org.glassfish.pfl.objectweb.asm.tree.LabelNode
dup
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.end:Lorg/glassfish/pfl/objectweb/asm/Label;
invokespecial org.glassfish.pfl.objectweb.asm.tree.LabelNode.<init>:(Lorg/glassfish/pfl/objectweb/asm/Label;)V
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.endNode:Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;
9: aload 0
new org.glassfish.pfl.objectweb.asm.Label
dup
invokespecial org.glassfish.pfl.objectweb.asm.Label.<init>:()V
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.afterExcStore:Lorg/glassfish/pfl/objectweb/asm/Label;
10: aload 0
new org.glassfish.pfl.objectweb.asm.tree.LabelNode
dup
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.end:Lorg/glassfish/pfl/objectweb/asm/Label;
invokespecial org.glassfish.pfl.objectweb.asm.tree.LabelNode.<init>:(Lorg/glassfish/pfl/objectweb/asm/Label;)V
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.afterExcStoreNode:Lorg/glassfish/pfl/objectweb/asm/tree/LabelNode;
11: aload 0
aconst_null
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lvs:Lorg/glassfish/pfl/objectweb/asm/commons/LocalVariablesSorter;
12: aload 0
aconst_null
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__result:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
13: aload 0
aconst_null
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__mm:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
14: aload 0
aconst_null
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__exc:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
15: aload 0
iload 2
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.access:I
16: aload 0
aload 3
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.name:Ljava/lang/String;
17: aload 0
aload 4
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.desc:Ljava/lang/String;
18: aload 0
aload 5
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
19: aload 0
aload 1
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.ecd:Lorg/glassfish/pfl/tf/spi/EnhancedClassData;
aload 3
invokeinterface org.glassfish.pfl.tf.spi.EnhancedClassData.getMethodIndex:(Ljava/lang/String;)I
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.identVal:I
20: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.returnOpcodes:Ljava/util/Set;
sipush 177
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
21: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.returnOpcodes:Ljava/util/Set;
sipush 172
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
22: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.returnOpcodes:Ljava/util/Set;
sipush 176
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
23: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.returnOpcodes:Ljava/util/Set;
sipush 173
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
24: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.returnOpcodes:Ljava/util/Set;
sipush 174
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
25: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.returnOpcodes:Ljava/util/Set;
sipush 175
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
26: return
end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 27 2 access I
0 27 3 name Ljava/lang/String;
0 27 4 desc Ljava/lang/String;
0 27 5 mv Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
MethodParameters:
Name Flags
this$0 final
access final
name final
desc final
mv final
public void visitCode();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
ldc "visitCode"
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
1: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__result:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
ifnull 3
2: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__result:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
invokevirtual org.glassfish.pfl.tf.spi.Util.initLocal:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;)V
3: StackMap locals:
StackMap stack:
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.name:Ljava/lang/String;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.desc:Ljava/lang/String;
invokevirtual org.glassfish.pfl.tf.spi.Util.getFullMethodDescriptor:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 1
start local 1 4: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
new java.lang.StringBuilder
dup
ldc "fullDesc = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
5: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.ecd:Lorg/glassfish/pfl/tf/spi/EnhancedClassData;
aload 1
invokeinterface org.glassfish.pfl.tf.spi.EnhancedClassData.getHolderName:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 6: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
sipush 178
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.ecd:Lorg/glassfish/pfl/tf/spi/EnhancedClassData;
invokeinterface org.glassfish.pfl.tf.spi.EnhancedClassData.getClassName:()Ljava/lang/String;
7: aload 2
ldc Lorg/glassfish/pfl/basic/contain/SynchronizedHolder;
invokestatic org.glassfish.pfl.objectweb.asm.Type.getDescriptor:(Ljava/lang/Class;)Ljava/lang/String;
8: invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitFieldInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
9: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
sipush 182
10: getstatic org.glassfish.pfl.tf.spi.EnhancedClassData.SH_NAME:Ljava/lang/String;
ldc "content"
11: ldc "()Ljava/lang/Object;"
12: invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
13: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
sipush 192
14: getstatic org.glassfish.pfl.tf.spi.EnhancedClassData.MM_NAME:Ljava/lang/String;
15: invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitTypeInsn:(ILjava/lang/String;)V
16: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 58
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__mm:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
getfield org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.index:I
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
17: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 25
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__mm:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
getfield org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.index:I
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
18: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
sipush 198
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.start:Lorg/glassfish/pfl/objectweb/asm/Label;
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitJumpInsn:(ILorg/glassfish/pfl/objectweb/asm/Label;)V
19: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 25
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__mm:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
getfield org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.index:I
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
20: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.identVal:I
invokevirtual org.glassfish.pfl.tf.spi.Util.emitIntConstant:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;I)V
21: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.access:I
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.desc:Ljava/lang/String;
invokevirtual org.glassfish.pfl.tf.spi.Util.wrapArgs:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;ILjava/lang/String;)V
22: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
sipush 185
23: getstatic org.glassfish.pfl.tf.spi.EnhancedClassData.MM_NAME:Ljava/lang/String;
ldc "enter"
24: ldc "(I[Ljava/lang/Object;)V"
25: invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
26: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.start:Lorg/glassfish/pfl/objectweb/asm/Label;
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitLabel:(Lorg/glassfish/pfl/objectweb/asm/Label;)V
27: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
4 28 1 fullDesc Ljava/lang/String;
6 28 2 fname Ljava/lang/String;
private void emitExceptionReport(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
ldc "emitExceptionReport called"
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
1: new org.glassfish.pfl.objectweb.asm.Label
dup
invokespecial org.glassfish.pfl.objectweb.asm.Label.<init>:()V
astore 2
start local 2 2: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 25
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__mm:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
getfield org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.index:I
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
3: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
sipush 198
aload 2
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitJumpInsn:(ILorg/glassfish/pfl/objectweb/asm/Label;)V
4: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 25
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__mm:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
getfield org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.index:I
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
5: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.identVal:I
invokevirtual org.glassfish.pfl.tf.spi.Util.emitIntConstant:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;I)V
6: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 25
iload 1
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
7: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
sipush 185
8: getstatic org.glassfish.pfl.tf.spi.EnhancedClassData.MM_NAME:Ljava/lang/String;
ldc "exception"
9: ldc "(ILjava/lang/Throwable;)V"
10: invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
11: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 2
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitLabel:(Lorg/glassfish/pfl/objectweb/asm/Label;)V
12: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 13 1 excIndex I
2 13 2 skipLabel Lorg/glassfish/pfl/objectweb/asm/Label;
MethodParameters:
Name Flags
excIndex final
private void emitFinally();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
ldc "emitFinally called"
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
1: new org.glassfish.pfl.objectweb.asm.Label
dup
invokespecial org.glassfish.pfl.objectweb.asm.Label.<init>:()V
astore 1
start local 1 2: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 25
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__mm:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
getfield org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.index:I
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
3: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
sipush 198
aload 1
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitJumpInsn:(ILorg/glassfish/pfl/objectweb/asm/Label;)V
4: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 25
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__mm:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
getfield org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.index:I
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
5: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.identVal:I
invokevirtual org.glassfish.pfl.tf.spi.Util.emitIntConstant:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;I)V
6: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.desc:Ljava/lang/String;
invokestatic org.glassfish.pfl.objectweb.asm.Type.getReturnType:(Ljava/lang/String;)Lorg/glassfish/pfl/objectweb/asm/Type;
astore 2
start local 2 7: aload 2
getstatic org.glassfish.pfl.objectweb.asm.Type.VOID_TYPE:Lorg/glassfish/pfl/objectweb/asm/Type;
invokevirtual org.glassfish.pfl.objectweb.asm.Type.equals:(Ljava/lang/Object;)Z
ifeq 13
8: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
sipush 185
9: getstatic org.glassfish.pfl.tf.spi.EnhancedClassData.MM_NAME:Ljava/lang/String;
ldc "exit"
10: ldc "(I)V"
11: invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
12: goto 20
13: StackMap locals: org.glassfish.pfl.objectweb.asm.Label org.glassfish.pfl.objectweb.asm.Type
StackMap stack:
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__result:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
getfield org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.index:I
14: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__result:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
getfield org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.desc:Ljava/lang/String;
invokestatic org.glassfish.pfl.objectweb.asm.Type.getType:(Ljava/lang/String;)Lorg/glassfish/pfl/objectweb/asm/Type;
15: invokevirtual org.glassfish.pfl.tf.spi.Util.wrapArg:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;ILorg/glassfish/pfl/objectweb/asm/Type;)I
pop
16: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
sipush 185
17: getstatic org.glassfish.pfl.tf.spi.EnhancedClassData.MM_NAME:Ljava/lang/String;
ldc "exit"
18: ldc "(ILjava/lang/Object;)V"
19: invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
20: StackMap locals:
StackMap stack:
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 1
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitLabel:(Lorg/glassfish/pfl/objectweb/asm/Label;)V
21: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
2 22 1 skipLabel Lorg/glassfish/pfl/objectweb/asm/Label;
7 22 2 rtype Lorg/glassfish/pfl/objectweb/asm/Type;
public void visitInsn(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
new java.lang.StringBuilder
dup
ldc "visitInsn["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokestatic org.glassfish.pfl.tf.spi.Util.opcodeToString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "] called"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
1: iload 1
iconst_1
if_icmpne 6
2: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input.ACONST_NULL_BC:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.transition:(Lorg/glassfish/pfl/tf/spi/Util;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;)Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
3: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.NORMAL:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
if_acmpne 27
4: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
iload 1
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitInsn:(I)V
5: goto 27
StackMap locals:
StackMap stack:
6: iload 1
iconst_3
if_icmpne 11
7: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input.ICONST_0_BC:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.transition:(Lorg/glassfish/pfl/tf/spi/Util;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;)Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
8: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.NORMAL:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
if_acmpne 27
9: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
iload 1
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitInsn:(I)V
10: goto 27
11: StackMap locals:
StackMap stack:
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input.OTHER:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.transition:(Lorg/glassfish/pfl/tf/spi/Util;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;)Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
12: iload 1
sipush 191
if_icmpne 21
13: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
ldc "handling throw"
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
14: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lvs:Lorg/glassfish/pfl/objectweb/asm/commons/LocalVariablesSorter;
15: ldc Ljava/lang/Throwable;
invokestatic org.glassfish.pfl.objectweb.asm.Type.getType:(Ljava/lang/Class;)Lorg/glassfish/pfl/objectweb/asm/Type;
16: invokevirtual org.glassfish.pfl.objectweb.asm.commons.LocalVariablesSorter.newLocal:(Lorg/glassfish/pfl/objectweb/asm/Type;)I
istore 2
start local 2 17: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 58
iload 2
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
18: aload 0
iload 2
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.emitExceptionReport:(I)V
19: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 25
iload 2
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
end local 2 20: goto 26
StackMap locals:
StackMap stack:
21: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.returnOpcodes:Ljava/util/Set;
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 26
22: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
ldc "handling return"
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
23: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
iload 1
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__result:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
invokevirtual org.glassfish.pfl.tf.spi.Util.storeFromXReturn:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;ILorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;)V
24: aload 0
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.emitFinally:()V
25: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
iload 1
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__result:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
invokevirtual org.glassfish.pfl.tf.spi.Util.loadFromXReturn:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;ILorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;)V
26: StackMap locals:
StackMap stack:
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
iload 1
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitInsn:(I)V
27: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 28 1 opcode I
17 20 2 exc I
MethodParameters:
Name Flags
opcode final
public void visitMethodInsn(int, java.lang.String, java.lang.String, java.lang.String);
descriptor: (ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
new java.lang.StringBuilder
dup
ldc "MM method: visitMethodInsn["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
1: iload 1
invokestatic org.glassfish.pfl.tf.spi.Util.opcodeToString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "]: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
3: invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
4: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 3
aload 4
invokevirtual org.glassfish.pfl.tf.spi.Util.getFullMethodDescriptor:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 5
start local 5 5: iload 1
sipush 183
if_icmpne 18
6: aload 2
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.ecd:Lorg/glassfish/pfl/tf/spi/EnhancedClassData;
invokeinterface org.glassfish.pfl.tf.spi.EnhancedClassData.getClassName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 18
7: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.ecd:Lorg/glassfish/pfl/tf/spi/EnhancedClassData;
aload 5
invokeinterface org.glassfish.pfl.tf.spi.EnhancedClassData.classifyMethod:(Ljava/lang/String;)Lorg/glassfish/pfl/tf/spi/EnhancedClassData$MethodType;
8: getstatic org.glassfish.pfl.tf.spi.EnhancedClassData$MethodType.INFO_METHOD:Lorg/glassfish/pfl/tf/spi/EnhancedClassData$MethodType;
9: if_acmpne 18
10: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
ldc "rewriting method call"
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
11: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
12: getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input.INFO_METHOD_CALL:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;
13: invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.transition:(Lorg/glassfish/pfl/tf/spi/Util;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;)Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
14: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 25
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__mm:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
getfield org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.index:I
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
15: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.identVal:I
invokevirtual org.glassfish.pfl.tf.spi.Util.emitIntConstant:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;I)V
16: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
iload 1
aload 2
aload 3
aload 4
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
17: goto 20
18: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input.OTHER:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.transition:(Lorg/glassfish/pfl/tf/spi/Util;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;)Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
19: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
iload 1
aload 2
aload 3
aload 4
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
20: StackMap locals:
StackMap stack:
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 21 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 21 1 opcode I
0 21 2 owner Ljava/lang/String;
0 21 3 name Ljava/lang/String;
0 21 4 desc Ljava/lang/String;
5 21 5 fullDesc Ljava/lang/String;
MethodParameters:
Name Flags
opcode final
owner final
name final
desc final
public void visitMaxs(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
ldc "MM method: visitMaxs"
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
1: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.end:Lorg/glassfish/pfl/objectweb/asm/Label;
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitLabel:(Lorg/glassfish/pfl/objectweb/asm/Label;)V
2: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.excHandler:Lorg/glassfish/pfl/objectweb/asm/Label;
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitLabel:(Lorg/glassfish/pfl/objectweb/asm/Label;)V
3: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.start:Lorg/glassfish/pfl/objectweb/asm/Label;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.end:Lorg/glassfish/pfl/objectweb/asm/Label;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.excHandler:Lorg/glassfish/pfl/objectweb/asm/Label;
aconst_null
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitTryCatchBlock:(Lorg/glassfish/pfl/objectweb/asm/Label;Lorg/glassfish/pfl/objectweb/asm/Label;Lorg/glassfish/pfl/objectweb/asm/Label;Ljava/lang/String;)V
4: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.excHandler:Lorg/glassfish/pfl/objectweb/asm/Label;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.afterExcStore:Lorg/glassfish/pfl/objectweb/asm/Label;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.excHandler:Lorg/glassfish/pfl/objectweb/asm/Label;
aconst_null
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitTryCatchBlock:(Lorg/glassfish/pfl/objectweb/asm/Label;Lorg/glassfish/pfl/objectweb/asm/Label;Lorg/glassfish/pfl/objectweb/asm/Label;Ljava/lang/String;)V
5: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 58
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__exc:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
getfield org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.index:I
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
6: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.afterExcStore:Lorg/glassfish/pfl/objectweb/asm/Label;
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitLabel:(Lorg/glassfish/pfl/objectweb/asm/Label;)V
7: aload 0
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.emitFinally:()V
8: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 25
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__exc:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
getfield org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.index:I
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
9: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
sipush 191
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitInsn:(I)V
10: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__result:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
ifnull 12
11: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__result:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
invokevirtual org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.accept:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;)V
12: StackMap locals:
StackMap stack:
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__mm:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
invokevirtual org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.accept:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;)V
13: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.__exc:Lorg/glassfish/pfl/objectweb/asm/tree/LocalVariableNode;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
invokevirtual org.glassfish.pfl.objectweb.asm.tree.LocalVariableNode.accept:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;)V
14: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
iload 1
bipush 7
iadd
iload 2
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitMaxs:(II)V
15: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 16 1 maxStack I
0 16 2 maxLocals I
MethodParameters:
Name Flags
maxStack final
maxLocals final
public void visitIntInsn(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
new java.lang.StringBuilder
dup
ldc "visitIntInsn["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokestatic org.glassfish.pfl.tf.spi.Util.opcodeToString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: ldc "] operand="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
2: invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
3: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input.OTHER:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.transition:(Lorg/glassfish/pfl/tf/spi/Util;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;)Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
4: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
iload 1
iload 2
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitIntInsn:(II)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 6 1 opcode I
0 6 2 operand I
MethodParameters:
Name Flags
opcode final
operand final
public void visitVarInsn(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
new java.lang.StringBuilder
dup
ldc "visitVarInsn["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokestatic org.glassfish.pfl.tf.spi.Util.opcodeToString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: ldc "] var="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
2: invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
3: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input.OTHER:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.transition:(Lorg/glassfish/pfl/tf/spi/Util;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;)Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
4: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
iload 1
iload 2
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 6 1 opcode I
0 6 2 var I
MethodParameters:
Name Flags
opcode final
var final
public void visitTypeInsn(int, java.lang.String);
descriptor: (ILjava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
new java.lang.StringBuilder
dup
ldc "visitTypeInsn["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokestatic org.glassfish.pfl.tf.spi.Util.opcodeToString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: ldc "] type="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
2: invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
3: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input.OTHER:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.transition:(Lorg/glassfish/pfl/tf/spi/Util;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;)Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
4: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
iload 1
aload 2
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitTypeInsn:(ILjava/lang/String;)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 6 1 opcode I
0 6 2 type Ljava/lang/String;
MethodParameters:
Name Flags
opcode final
type final
public void visitFieldInsn(int, java.lang.String, java.lang.String, java.lang.String);
descriptor: (ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
new java.lang.StringBuilder
dup
ldc "visitFieldInsn["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokestatic org.glassfish.pfl.tf.spi.Util.opcodeToString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: ldc "] "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
2: invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
3: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input.OTHER:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.transition:(Lorg/glassfish/pfl/tf/spi/Util;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;)Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
4: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
iload 1
aload 2
aload 3
aload 4
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitFieldInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 6 1 opcode I
0 6 2 owner Ljava/lang/String;
0 6 3 name Ljava/lang/String;
0 6 4 desc Ljava/lang/String;
MethodParameters:
Name Flags
opcode final
owner final
name final
desc final
public void visitJumpInsn(int, org.glassfish.pfl.objectweb.asm.Label);
descriptor: (ILorg/glassfish/pfl/objectweb/asm/Label;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
new java.lang.StringBuilder
dup
ldc "visitTypeInsn["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokestatic org.glassfish.pfl.tf.spi.Util.opcodeToString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: ldc "] label="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
2: invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
3: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input.OTHER:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.transition:(Lorg/glassfish/pfl/tf/spi/Util;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;)Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
4: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
iload 1
aload 2
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitJumpInsn:(ILorg/glassfish/pfl/objectweb/asm/Label;)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 6 1 opcode I
0 6 2 label Lorg/glassfish/pfl/objectweb/asm/Label;
MethodParameters:
Name Flags
opcode final
label final
public void visitLdcInsn(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
new java.lang.StringBuilder
dup
ldc "visitLdcInsn "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
1: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input.OTHER:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.transition:(Lorg/glassfish/pfl/tf/spi/Util;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;)Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
2: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 1
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 4 1 cst Ljava/lang/Object;
MethodParameters:
Name Flags
cst final
public void visitIincInsn(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
iconst_2
new java.lang.StringBuilder
dup
ldc "visitIincInsn var="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
1: ldc " increment="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
2: invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer.info:(ILjava/lang/String;)V
3: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input.OTHER:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.transition:(Lorg/glassfish/pfl/tf/spi/Util;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;)Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
4: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
iload 1
iload 2
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitIincInsn:(II)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 6 1 var I
0 6 2 increment I
MethodParameters:
Name Flags
var final
increment final
public void visitTableSwitchInsn(int, int, org.glassfish.pfl.objectweb.asm.Label, org.glassfish.pfl.objectweb.asm.Label[]);
descriptor: (IILorg/glassfish/pfl/objectweb/asm/Label;[Lorg/glassfish/pfl/objectweb/asm/Label;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input.OTHER:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.transition:(Lorg/glassfish/pfl/tf/spi/Util;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;)Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
1: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
iload 1
iload 2
aload 3
aload 4
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitTableSwitchInsn:(IILorg/glassfish/pfl/objectweb/asm/Label;[Lorg/glassfish/pfl/objectweb/asm/Label;)V
2: return
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/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 3 1 min I
0 3 2 max I
0 3 3 dflt Lorg/glassfish/pfl/objectweb/asm/Label;
0 3 4 labels [Lorg/glassfish/pfl/objectweb/asm/Label;
MethodParameters:
Name Flags
min final
max final
dflt final
labels final
public void visitLookupSwitchInsn(org.glassfish.pfl.objectweb.asm.Label, int[], org.glassfish.pfl.objectweb.asm.Label[]);
descriptor: (Lorg/glassfish/pfl/objectweb/asm/Label;[I[Lorg/glassfish/pfl/objectweb/asm/Label;)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
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input.OTHER:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.transition:(Lorg/glassfish/pfl/tf/spi/Util;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;)Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
1: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 1
aload 2
aload 3
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitLookupSwitchInsn:(Lorg/glassfish/pfl/objectweb/asm/Label;[I[Lorg/glassfish/pfl/objectweb/asm/Label;)V
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 3 1 dflt Lorg/glassfish/pfl/objectweb/asm/Label;
0 3 2 keys [I
0 3 3 labels [Lorg/glassfish/pfl/objectweb/asm/Label;
MethodParameters:
Name Flags
dflt final
keys final
labels final
public void visitMultiANewArrayInsn(java.lang.String, int);
descriptor: (Ljava/lang/String;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
getstatic org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input.OTHER:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State.transition:(Lorg/glassfish/pfl/tf/spi/Util;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$Input;)Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
putfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer.current:Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$State;
1: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer.lmv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 1
iload 2
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitMultiANewArrayInsn:(Ljava/lang/String;I)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassTracer$MonitoredMethodEnhancer;
0 3 1 desc Ljava/lang/String;
0 3 2 dims I
MethodParameters:
Name Flags
desc final
dims final
}
SourceFile: "ClassTracer.java"
NestHost: org.glassfish.pfl.tf.tools.enhancer.ClassTracer
InnerClasses:
public final MethodType = org.glassfish.pfl.tf.spi.EnhancedClassData$MethodType of org.glassfish.pfl.tf.spi.EnhancedClassData
public final Input = org.glassfish.pfl.tf.tools.enhancer.ClassTracer$Input of org.glassfish.pfl.tf.tools.enhancer.ClassTracer
private MonitoredMethodEnhancer = org.glassfish.pfl.tf.tools.enhancer.ClassTracer$MonitoredMethodEnhancer of org.glassfish.pfl.tf.tools.enhancer.ClassTracer
public abstract State = org.glassfish.pfl.tf.tools.enhancer.ClassTracer$State of org.glassfish.pfl.tf.tools.enhancer.ClassTracer