public class org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins this
         0: .line 46
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/aarch64/AArch64GraphBuilderPlugins;

  public static void register(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins, org.graalvm.compiler.bytecode.BytecodeProvider);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration$Plugins;Lorg/graalvm/compiler/bytecode/BytecodeProvider;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins plugins
        start local 1 // org.graalvm.compiler.bytecode.BytecodeProvider bytecodeProvider
         0: .line 49
            aload 0 /* plugins */
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins.getInvocationPlugins:()Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            astore 2 /* invocationPlugins */
        start local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins invocationPlugins
         1: .line 50
            aload 2 /* invocationPlugins */
            new org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$1
            dup
            aload 2 /* invocationPlugins */
            aload 1 /* bytecodeProvider */
            invokespecial org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$1.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/bytecode/BytecodeProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.defer:(Ljava/lang/Runnable;)V
         2: .line 58
            return
        end local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins invocationPlugins
        end local 1 // org.graalvm.compiler.bytecode.BytecodeProvider bytecodeProvider
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins plugins
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0            plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration$Plugins;
            0    3     1   bytecodeProvider  Lorg/graalvm/compiler/bytecode/BytecodeProvider;
            1    3     2  invocationPlugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
    MethodParameters:
                  Name  Flags
      plugins           
      bytecodeProvider  

  private static void registerIntegerLongPlugins(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, java.lang.Class<?>, jdk.vm.ci.meta.JavaKind, org.graalvm.compiler.bytecode.BytecodeProvider);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/Class;Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/bytecode/BytecodeProvider;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=7, args_size=4
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        start local 1 // java.lang.Class substituteDeclaringClass
        start local 2 // jdk.vm.ci.meta.JavaKind kind
        start local 3 // org.graalvm.compiler.bytecode.BytecodeProvider bytecodeProvider
         0: .line 61
            aload 2 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.toBoxedJavaClass:()Ljava/lang/Class;
            astore 4 /* declaringClass */
        start local 4 // java.lang.Class declaringClass
         1: .line 62
            aload 2 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.toJavaClass:()Ljava/lang/Class;
            astore 5 /* type */
        start local 5 // java.lang.Class type
         2: .line 63
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 0 /* plugins */
            aload 4 /* declaringClass */
            aload 3 /* bytecodeProvider */
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/bytecode/BytecodeProvider;)V
            astore 6 /* r */
        start local 6 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         3: .line 64
            aload 6 /* r */
            ldc "numberOfLeadingZeros"
            aload 5 /* type */
            new org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$2
            dup
            invokespecial org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$2.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         4: .line 76
            aload 6 /* r */
            ldc "numberOfTrailingZeros"
            aload 5 /* type */
            new org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$3
            dup
            invokespecial org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$3.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         5: .line 88
            aload 6 /* r */
            aload 1 /* substituteDeclaringClass */
            ldc "bitCount"
            iconst_1
            anewarray java.lang.reflect.Type
            dup
            iconst_0
            aload 5 /* type */
            aastore
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.registerMethodSubstitution:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
         6: .line 89
            return
        end local 6 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 5 // java.lang.Class type
        end local 4 // java.lang.Class declaringClass
        end local 3 // org.graalvm.compiler.bytecode.BytecodeProvider bytecodeProvider
        end local 2 // jdk.vm.ci.meta.JavaKind kind
        end local 1 // java.lang.Class substituteDeclaringClass
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0    7     0                   plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            0    7     1  substituteDeclaringClass  Ljava/lang/Class<*>;
            0    7     2                      kind  Ljdk/vm/ci/meta/JavaKind;
            0    7     3          bytecodeProvider  Lorg/graalvm/compiler/bytecode/BytecodeProvider;
            1    7     4            declaringClass  Ljava/lang/Class<*>;
            2    7     5                      type  Ljava/lang/Class<*>;
            3    7     6                         r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    Signature: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/Class<*>;Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/bytecode/BytecodeProvider;)V
    MethodParameters:
                          Name  Flags
      plugins                   
      substituteDeclaringClass  
      kind                      
      bytecodeProvider          

  private static void registerMathPlugins(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
         0: .line 92
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 0 /* plugins */
            ldc Ljava/lang/Math;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 1 /* r */
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 93
            aload 1 /* r */
            ldc "sin"
            getstatic org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.SIN:Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
            invokestatic org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins.registerUnaryMath:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;Ljava/lang/String;Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;)V
         2: .line 94
            aload 1 /* r */
            ldc "cos"
            getstatic org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.COS:Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
            invokestatic org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins.registerUnaryMath:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;Ljava/lang/String;Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;)V
         3: .line 95
            aload 1 /* r */
            ldc "tan"
            getstatic org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.TAN:Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
            invokestatic org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins.registerUnaryMath:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;Ljava/lang/String;Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;)V
         4: .line 96
            aload 1 /* r */
            ldc "exp"
            getstatic org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.EXP:Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
            invokestatic org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins.registerUnaryMath:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;Ljava/lang/String;Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;)V
         5: .line 97
            aload 1 /* r */
            ldc "log"
            getstatic org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.LOG:Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
            invokestatic org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins.registerUnaryMath:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;Ljava/lang/String;Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;)V
         6: .line 98
            aload 1 /* r */
            ldc "log10"
            getstatic org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.LOG10:Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
            invokestatic org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins.registerUnaryMath:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;Ljava/lang/String;Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;)V
         7: .line 99
            aload 1 /* r */
            ldc "pow"
            getstatic java.lang.Double.TYPE:Ljava/lang/Class;
            getstatic java.lang.Double.TYPE:Ljava/lang/Class;
            new org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$4
            dup
            invokespecial org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$4.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         8: .line 106
            return
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0  plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            1    9     1        r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
         Name  Flags
      plugins  

  private static void registerUnaryMath(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration, java.lang.String, org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;Ljava/lang/String;Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        start local 1 // java.lang.String name
        start local 2 // org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation operation
         0: .line 109
            aload 0 /* r */
            aload 1 /* name */
            getstatic java.lang.Double.TYPE:Ljava/lang/Class;
            new org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$5
            dup
            aload 2 /* operation */
            invokespecial org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$5.<init>:(Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         1: .line 116
            return
        end local 2 // org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation operation
        end local 1 // java.lang.String name
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0          r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
            0    2     1       name  Ljava/lang/String;
            0    2     2  operation  Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
    MethodParameters:
           Name  Flags
      r          
      name       
      operation  
}
SourceFile: "AArch64GraphBuilderPlugins.java"
NestMembers:
  org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$1  org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$2  org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$3  org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$4  org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$5
InnerClasses:
  public Plugins = org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins of org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration
  public Registration = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins
  org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$1
  org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$2
  org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$3
  org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$4
  org.graalvm.compiler.replacements.aarch64.AArch64GraphBuilderPlugins$5
  public final UnaryOperation = org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation of org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode