public abstract class org.graalvm.compiler.lir.jtt.LIRTest extends org.graalvm.compiler.jtt.JTTTest
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.graalvm.compiler.lir.jtt.LIRTest
  super_class: org.graalvm.compiler.jtt.JTTTest
{
  private org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin lirTestPlugin;
    descriptor: Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
    flags: (0x0002) ACC_PRIVATE

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 61
            ldc Lorg/graalvm/compiler/lir/jtt/LIRTest;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.graalvm.compiler.lir.jtt.LIRTest.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.lir.jtt.LIRTest this
         0: .line 61
            aload 0 /* this */
            invokespecial org.graalvm.compiler.jtt.JTTTest.<init>:()V
         1: .line 143
            aload 0 /* this */
            new org.graalvm.compiler.lir.jtt.LIRTest$1
            dup
            aload 0 /* this */
            invokespecial org.graalvm.compiler.lir.jtt.LIRTest$1.<init>:(Lorg/graalvm/compiler/lir/jtt/LIRTest;)V
            putfield org.graalvm.compiler.lir.jtt.LIRTest.lirTestPlugin:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
         2: .line 61
            return
        end local 0 // org.graalvm.compiler.lir.jtt.LIRTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/lir/jtt/LIRTest;

  protected void registerInvocationPlugins(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=8, args_size=2
        start local 0 // org.graalvm.compiler.lir.jtt.LIRTest this
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins invocationPlugins
         0: .line 196
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            astore 2 /* c */
        start local 2 // java.lang.Class c
         1: .line 197
            aload 2 /* c */
            invokevirtual java.lang.Class.getMethods:()[Ljava/lang/reflect/Method;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 10
      StackMap locals: org.graalvm.compiler.lir.jtt.LIRTest org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins java.lang.Class top int int java.lang.reflect.Method[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* m */
        start local 3 // java.lang.reflect.Method m
         3: .line 198
            aload 3 /* m */
            ldc Lorg/graalvm/compiler/lir/jtt/LIRTest$LIRIntrinsic;
            invokevirtual java.lang.reflect.Method.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            ifnull 9
         4: .line 199
            getstatic org.graalvm.compiler.lir.jtt.LIRTest.$assertionsDisabled:Z
            ifne 5
            aload 3 /* m */
            invokevirtual java.lang.reflect.Method.getModifiers:()I
            invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
            ifne 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 200
      StackMap locals: org.graalvm.compiler.lir.jtt.LIRTest org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins java.lang.Class java.lang.reflect.Method int int java.lang.reflect.Method[]
      StackMap stack:
            aload 3 /* m */
            invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
            astore 7 /* p */
        start local 7 // java.lang.Class[] p
         6: .line 201
            getstatic org.graalvm.compiler.lir.jtt.LIRTest.$assertionsDisabled:Z
            ifne 7
            aload 7 /* p */
            arraylength
            ifgt 7
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 202
      StackMap locals: java.lang.Class[]
      StackMap stack:
            getstatic org.graalvm.compiler.lir.jtt.LIRTest.$assertionsDisabled:Z
            ifne 8
            ldc Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;
            aload 7 /* p */
            iconst_0
            aaload
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifne 8
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         8: .line 204
      StackMap locals:
      StackMap stack:
            aload 1 /* invocationPlugins */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.jtt.LIRTest.lirTestPlugin:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
            aload 2 /* c */
            aload 3 /* m */
            invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
            aload 7 /* p */
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.register:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;Ljava/lang/reflect/Type;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
        end local 7 // java.lang.Class[] p
        end local 3 // java.lang.reflect.Method m
         9: .line 197
      StackMap locals: org.graalvm.compiler.lir.jtt.LIRTest org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins java.lang.Class top int int java.lang.reflect.Method[]
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
        10: iload 4
            iload 5
            if_icmplt 2
        11: .line 207
            new org.graalvm.compiler.lir.jtt.LIRTest$2
            dup
            aload 0 /* this */
            invokespecial org.graalvm.compiler.lir.jtt.LIRTest$2.<init>:(Lorg/graalvm/compiler/lir/jtt/LIRTest;)V
            astore 3 /* outputPlugin */
        start local 3 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin outputPlugin
        12: .line 215
            aload 1 /* invocationPlugins */
            aload 3 /* outputPlugin */
            ldc Lorg/graalvm/compiler/lir/jtt/LIRTest;
            ldc "getOutput"
            iconst_3
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;
            aastore
            dup
            iconst_1
            ldc Ljava/lang/String;
            aastore
            dup
            iconst_2
            ldc Ljava/lang/Object;
            aastore
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.register:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;Ljava/lang/reflect/Type;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
        13: .line 216
            aload 1 /* invocationPlugins */
            aload 3 /* outputPlugin */
            ldc Lorg/graalvm/compiler/lir/jtt/LIRTest;
            ldc "getOutput"
            iconst_3
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;
            aastore
            dup
            iconst_1
            ldc Ljava/lang/String;
            aastore
            dup
            iconst_2
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.register:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;Ljava/lang/reflect/Type;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
        14: .line 217
            aload 0 /* this */
            aload 1 /* invocationPlugins */
            invokespecial org.graalvm.compiler.jtt.JTTTest.registerInvocationPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
        15: .line 218
            return
        end local 3 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin outputPlugin
        end local 2 // java.lang.Class c
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins invocationPlugins
        end local 0 // org.graalvm.compiler.lir.jtt.LIRTest this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   16     0               this  Lorg/graalvm/compiler/lir/jtt/LIRTest;
            0   16     1  invocationPlugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            1   16     2                  c  Ljava/lang/Class<+Lorg/graalvm/compiler/lir/jtt/LIRTest;>;
            3    9     3                  m  Ljava/lang/reflect/Method;
            6    9     7                  p  [Ljava/lang/Class;
           12   16     3       outputPlugin  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
    MethodParameters:
                   Name  Flags
      invocationPlugins  

  public static byte getOutput(org.graalvm.compiler.lir.jtt.LIRTestSpecification, java.lang.String, byte);
    descriptor: (Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;Ljava/lang/String;B)B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.lir.jtt.LIRTestSpecification spec
        start local 1 // java.lang.String name
        start local 2 // byte expected
         0: .line 222
            iload 2 /* expected */
            ireturn
        end local 2 // byte expected
        end local 1 // java.lang.String name
        end local 0 // org.graalvm.compiler.lir.jtt.LIRTestSpecification spec
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      spec  Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;
            0    1     1      name  Ljava/lang/String;
            0    1     2  expected  B
    MethodParameters:
          Name  Flags
      spec      
      name      
      expected  

  public static short getOutput(org.graalvm.compiler.lir.jtt.LIRTestSpecification, java.lang.String, short);
    descriptor: (Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;Ljava/lang/String;S)S
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.lir.jtt.LIRTestSpecification spec
        start local 1 // java.lang.String name
        start local 2 // short expected
         0: .line 227
            iload 2 /* expected */
            ireturn
        end local 2 // short expected
        end local 1 // java.lang.String name
        end local 0 // org.graalvm.compiler.lir.jtt.LIRTestSpecification spec
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      spec  Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;
            0    1     1      name  Ljava/lang/String;
            0    1     2  expected  S
    MethodParameters:
          Name  Flags
      spec      
      name      
      expected  

  public static int getOutput(org.graalvm.compiler.lir.jtt.LIRTestSpecification, java.lang.String, int);
    descriptor: (Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;Ljava/lang/String;I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.lir.jtt.LIRTestSpecification spec
        start local 1 // java.lang.String name
        start local 2 // int expected
         0: .line 232
            iload 2 /* expected */
            ireturn
        end local 2 // int expected
        end local 1 // java.lang.String name
        end local 0 // org.graalvm.compiler.lir.jtt.LIRTestSpecification spec
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      spec  Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;
            0    1     1      name  Ljava/lang/String;
            0    1     2  expected  I
    MethodParameters:
          Name  Flags
      spec      
      name      
      expected  

  public static long getOutput(org.graalvm.compiler.lir.jtt.LIRTestSpecification, java.lang.String, long);
    descriptor: (Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;Ljava/lang/String;J)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.lir.jtt.LIRTestSpecification spec
        start local 1 // java.lang.String name
        start local 2 // long expected
         0: .line 237
            lload 2 /* expected */
            lreturn
        end local 2 // long expected
        end local 1 // java.lang.String name
        end local 0 // org.graalvm.compiler.lir.jtt.LIRTestSpecification spec
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      spec  Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;
            0    1     1      name  Ljava/lang/String;
            0    1     2  expected  J
    MethodParameters:
          Name  Flags
      spec      
      name      
      expected  

  public static float getOutput(org.graalvm.compiler.lir.jtt.LIRTestSpecification, java.lang.String, float);
    descriptor: (Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;Ljava/lang/String;F)F
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.lir.jtt.LIRTestSpecification spec
        start local 1 // java.lang.String name
        start local 2 // float expected
         0: .line 242
            fload 2 /* expected */
            freturn
        end local 2 // float expected
        end local 1 // java.lang.String name
        end local 0 // org.graalvm.compiler.lir.jtt.LIRTestSpecification spec
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      spec  Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;
            0    1     1      name  Ljava/lang/String;
            0    1     2  expected  F
    MethodParameters:
          Name  Flags
      spec      
      name      
      expected  

  public static double getOutput(org.graalvm.compiler.lir.jtt.LIRTestSpecification, java.lang.String, double);
    descriptor: (Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;Ljava/lang/String;D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.lir.jtt.LIRTestSpecification spec
        start local 1 // java.lang.String name
        start local 2 // double expected
         0: .line 247
            dload 2 /* expected */
            dreturn
        end local 2 // double expected
        end local 1 // java.lang.String name
        end local 0 // org.graalvm.compiler.lir.jtt.LIRTestSpecification spec
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      spec  Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;
            0    1     1      name  Ljava/lang/String;
            0    1     2  expected  D
    MethodParameters:
          Name  Flags
      spec      
      name      
      expected  

  public static java.lang.Object getOutput(org.graalvm.compiler.lir.jtt.LIRTestSpecification, java.lang.String, java.lang.Object);
    descriptor: (Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.lir.jtt.LIRTestSpecification spec
        start local 1 // java.lang.String name
        start local 2 // java.lang.Object expected
         0: .line 252
            aload 2 /* expected */
            areturn
        end local 2 // java.lang.Object expected
        end local 1 // java.lang.String name
        end local 0 // org.graalvm.compiler.lir.jtt.LIRTestSpecification spec
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      spec  Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;
            0    1     1      name  Ljava/lang/String;
            0    1     2  expected  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      spec      
      name      
      expected  

  static org.graalvm.compiler.api.replacements.SnippetReflectionProvider access$0(org.graalvm.compiler.lir.jtt.LIRTest);
    descriptor: (Lorg/graalvm/compiler/lir/jtt/LIRTest;)Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.graalvm.compiler.lir.jtt.LIRTest.getSnippetReflection:()Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "LIRTest.java"
NestMembers:
  org.graalvm.compiler.lir.jtt.LIRTest$1  org.graalvm.compiler.lir.jtt.LIRTest$2  org.graalvm.compiler.lir.jtt.LIRTest$LIRIntrinsic  org.graalvm.compiler.lir.jtt.LIRTest$LIRTestNode  org.graalvm.compiler.lir.jtt.LIRTest$LIRValueNode
InnerClasses:
  org.graalvm.compiler.lir.jtt.LIRTest$1
  org.graalvm.compiler.lir.jtt.LIRTest$2
  public abstract LIRIntrinsic = org.graalvm.compiler.lir.jtt.LIRTest$LIRIntrinsic of org.graalvm.compiler.lir.jtt.LIRTest
  private final LIRTestNode = org.graalvm.compiler.lir.jtt.LIRTest$LIRTestNode of org.graalvm.compiler.lir.jtt.LIRTest
  private final LIRValueNode = org.graalvm.compiler.lir.jtt.LIRTest$LIRValueNode of org.graalvm.compiler.lir.jtt.LIRTest