class com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter$InvCounterClassVisitor extends jdk.internal.org.objectweb.asm.ClassVisitor implements jdk.internal.org.objectweb.asm.Opcodes
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter$InvCounterClassVisitor
  super_class: jdk.internal.org.objectweb.asm.ClassVisitor
{
  private final java.lang.String className;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  void <init>(jdk.internal.org.objectweb.asm.ClassVisitor, java.lang.String);
    descriptor: (Ljdk/internal/org/objectweb/asm/ClassVisitor;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter$InvCounterClassVisitor this
        start local 1 // jdk.internal.org.objectweb.asm.ClassVisitor cv
        start local 2 // java.lang.String className
         0: .line 93
            aload 0 /* this */
            ldc 327680
            aload 1 /* cv */
            invokespecial jdk.internal.org.objectweb.asm.ClassVisitor.<init>:(ILjdk/internal/org/objectweb/asm/ClassVisitor;)V
         1: .line 94
            aload 0 /* this */
            aload 2 /* className */
            putfield com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter$InvCounterClassVisitor.className:Ljava/lang/String;
         2: .line 95
            return
        end local 2 // java.lang.String className
        end local 1 // jdk.internal.org.objectweb.asm.ClassVisitor cv
        end local 0 // com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter$InvCounterClassVisitor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lcom/oracle/truffle/trufflenode/jniboundaryprofiler/JavaCallsInstrumenter$InvCounterClassVisitor;
            0    3     1         cv  Ljdk/internal/org/objectweb/asm/ClassVisitor;
            0    3     2  className  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      cv         final
      className  

  public jdk.internal.org.objectweb.asm.MethodVisitor visitMethod(int, java.lang.String, java.lang.String, java.lang.String, java.lang.String[]);
    descriptor: (ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Ljdk/internal/org/objectweb/asm/MethodVisitor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=6
        start local 0 // com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter$InvCounterClassVisitor this
        start local 1 // int access
        start local 2 // java.lang.String name
        start local 3 // java.lang.String desc
        start local 4 // java.lang.String signature
        start local 5 // java.lang.String[] exceptions
         0: .line 100
            aload 0 /* this */
            getfield com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter$InvCounterClassVisitor.cv:Ljdk/internal/org/objectweb/asm/ClassVisitor;
            iload 1 /* access */
            aload 2 /* name */
            aload 3 /* desc */
            aload 4 /* signature */
            aload 5 /* exceptions */
            invokevirtual jdk.internal.org.objectweb.asm.ClassVisitor.visitMethod:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Ljdk/internal/org/objectweb/asm/MethodVisitor;
            astore 6 /* mv */
        start local 6 // jdk.internal.org.objectweb.asm.MethodVisitor mv
         1: .line 101
            aload 6 /* mv */
            ifnull 3
            ldc "<init>"
            aload 2 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 3
            ldc "<clinit>"
            aload 2 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 3
            iconst_1
            iload 1 /* access */
            iand
            ifeq 3
         2: .line 102
            new com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter$InvCounterMethodVisitor
            dup
            aload 6 /* mv */
            aload 0 /* this */
            getfield com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter$InvCounterClassVisitor.className:Ljava/lang/String;
            aload 2 /* name */
            invokespecial com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter$InvCounterMethodVisitor.<init>:(Ljdk/internal/org/objectweb/asm/MethodVisitor;Ljava/lang/String;Ljava/lang/String;)V
            areturn
         3: .line 104
      StackMap locals: jdk.internal.org.objectweb.asm.MethodVisitor
      StackMap stack:
            aload 6 /* mv */
            areturn
        end local 6 // jdk.internal.org.objectweb.asm.MethodVisitor mv
        end local 5 // java.lang.String[] exceptions
        end local 4 // java.lang.String signature
        end local 3 // java.lang.String desc
        end local 2 // java.lang.String name
        end local 1 // int access
        end local 0 // com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter$InvCounterClassVisitor this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lcom/oracle/truffle/trufflenode/jniboundaryprofiler/JavaCallsInstrumenter$InvCounterClassVisitor;
            0    4     1      access  I
            0    4     2        name  Ljava/lang/String;
            0    4     3        desc  Ljava/lang/String;
            0    4     4   signature  Ljava/lang/String;
            0    4     5  exceptions  [Ljava/lang/String;
            1    4     6          mv  Ljdk/internal/org/objectweb/asm/MethodVisitor;
    MethodParameters:
            Name  Flags
      access      final
      name        final
      desc        final
      signature   final
      exceptions  final
}
SourceFile: "JavaCallsInstrumenter.java"
NestHost: com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter
InnerClasses:
  private InvCounterClassVisitor = com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter$InvCounterClassVisitor of com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter
  private InvCounterMethodVisitor = com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter$InvCounterMethodVisitor of com.oracle.truffle.trufflenode.jniboundaryprofiler.JavaCallsInstrumenter