public class org.graalvm.compiler.core.test.BoxingEliminationTest extends org.graalvm.compiler.core.test.GraalCompilerTest
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.core.test.BoxingEliminationTest
  super_class: org.graalvm.compiler.core.test.GraalCompilerTest
{
  private static final java.lang.Short s;
    descriptor: Ljava/lang/Short;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private org.graalvm.compiler.nodes.StructuredGraph graph;
    descriptor: Lorg/graalvm/compiler/nodes/StructuredGraph;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 48
            iconst_2
            invokestatic java.lang.Short.valueOf:(S)Ljava/lang/Short;
            putstatic org.graalvm.compiler.core.test.BoxingEliminationTest.s:Ljava/lang/Short;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 46
            aload 0 /* this */
            invokespecial org.graalvm.compiler.core.test.GraalCompilerTest.<init>:()V
            return
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;

  public static short referenceSnippet1();
    descriptor: ()S
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 52
            iconst_1
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static short referenceSnippet2();
    descriptor: ()S
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 57
            iconst_2
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.lang.Short boxedShort();
    descriptor: ()Ljava/lang/Short;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 61
            iconst_1
            invokestatic java.lang.Short.valueOf:(S)Ljava/lang/Short;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.lang.Object boxedObjectShort();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 65
            iconst_1
            invokestatic java.lang.Short.valueOf:(S)Ljava/lang/Short;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.lang.Object boxedObjectInteger();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 69
            iconst_1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.lang.Integer boxedInteger();
    descriptor: ()Ljava/lang/Integer;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 73
            iconst_2
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.lang.Short constantBoxedShort();
    descriptor: ()Ljava/lang/Short;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 77
            getstatic org.graalvm.compiler.core.test.BoxingEliminationTest.s:Ljava/lang/Short;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void test1();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 82
            aload 0 /* this */
            ldc "test1Snippet"
            ldc "referenceSnippet1"
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.compareGraphs:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 83
            return
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public static short test1Snippet();
    descriptor: ()S
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 87
            invokestatic org.graalvm.compiler.core.test.BoxingEliminationTest.boxedShort:()Ljava/lang/Short;
            invokevirtual java.lang.Short.shortValue:()S
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void test2();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 92
            aload 0 /* this */
            ldc "test2Snippet"
            ldc "referenceSnippet1"
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.compareGraphs:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 93
            return
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public static short test2Snippet();
    descriptor: ()S
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 97
            invokestatic org.graalvm.compiler.core.test.BoxingEliminationTest.boxedObjectShort:()Ljava/lang/Object;
            checkcast java.lang.Short
            invokevirtual java.lang.Short.shortValue:()S
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void test3();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 102
            aload 0 /* this */
            ldc "test3Snippet"
            ldc "referenceSnippet1"
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.compareGraphs:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 103
            return
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public static short test3Snippet();
    descriptor: ()S
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=0
         0: .line 107
            invokestatic org.graalvm.compiler.core.test.BoxingEliminationTest.boxedShort:()Ljava/lang/Short;
            invokevirtual java.lang.Short.shortValue:()S
            istore 0 /* b */
        start local 0 // short b
         1: .line 108
            iload 0 /* b */
            ifge 3
         2: .line 109
            invokestatic org.graalvm.compiler.core.test.BoxingEliminationTest.boxedShort:()Ljava/lang/Short;
            invokevirtual java.lang.Short.shortValue:()S
            istore 0 /* b */
         3: .line 111
      StackMap locals: int
      StackMap stack:
            iload 0 /* b */
            ireturn
        end local 0 // short b
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    4     0     b  S

  public void test4();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 116
            aload 0 /* this */
            ldc "test4Snippet"
            ldc "referenceSnippet2"
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.compareGraphs:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 117
            return
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public static short test4Snippet();
    descriptor: ()S
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 121
            invokestatic org.graalvm.compiler.core.test.BoxingEliminationTest.constantBoxedShort:()Ljava/lang/Short;
            invokevirtual java.lang.Short.shortValue:()S
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void testLoop();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 127
            aload 0 /* this */
            ldc "testLoopSnippet"
            ldc "referenceLoopSnippet"
            iconst_0
            iconst_1
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.compareGraphs:(Ljava/lang/String;Ljava/lang/String;ZZ)V
         1: .line 128
            return
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
    RuntimeVisibleAnnotations: 
      org.junit.Ignore()
      org.junit.Test()

  public static int testLoopSnippet(int, int);
    descriptor: (II)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // int n
        start local 1 // int a
         0: .line 131
            iload 1 /* a */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 2 /* sum */
        start local 2 // java.lang.Integer sum
         1: .line 132
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 3 /* i */
        start local 3 // java.lang.Integer i
         2: goto 5
         3: .line 133
      StackMap locals: java.lang.Integer java.lang.Integer
      StackMap stack:
            aload 2 /* sum */
            invokevirtual java.lang.Integer.intValue:()I
            aload 3 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            iadd
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 2 /* sum */
         4: .line 132
            aload 3 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            iconst_1
            iadd
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 3 /* i */
      StackMap locals:
      StackMap stack:
         5: aload 3 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            iload 0 /* n */
            if_icmplt 3
        end local 3 // java.lang.Integer i
         6: .line 135
            aload 2 /* sum */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
        end local 2 // java.lang.Integer sum
        end local 1 // int a
        end local 0 // int n
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     n  I
            0    7     1     a  I
            1    7     2   sum  Ljava/lang/Integer;
            2    6     3     i  Ljava/lang/Integer;
    MethodParameters:
      Name  Flags
      n     
      a     

  public static int referenceLoopSnippet(int, int);
    descriptor: (II)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // int n
        start local 1 // int a
         0: .line 139
            iload 1 /* a */
            istore 2 /* sum */
        start local 2 // int sum
         1: .line 140
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 5
         3: .line 141
      StackMap locals: int int
      StackMap stack:
            iload 2 /* sum */
            iload 3 /* i */
            iadd
            istore 2 /* sum */
         4: .line 140
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            iload 0 /* n */
            if_icmplt 3
        end local 3 // int i
         6: .line 143
            iload 2 /* sum */
            ireturn
        end local 2 // int sum
        end local 1 // int a
        end local 0 // int n
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     n  I
            0    7     1     a  I
            1    7     2   sum  I
            2    6     3     i  I
    MethodParameters:
      Name  Flags
      n     
      a     

  public void testLoop2();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 148
            aload 0 /* this */
            ldc "testLoop2Snippet"
            ldc "referenceLoop2Snippet"
            iconst_1
            iconst_1
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.compareGraphs:(Ljava/lang/String;Ljava/lang/String;ZZ)V
         1: .line 149
            return
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public static int testLoop2Snippet(int, java.lang.Integer);
    descriptor: (ILjava/lang/Integer;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // int n
        start local 1 // java.lang.Integer a
         0: .line 152
            aload 1 /* a */
            astore 2 /* sum */
        start local 2 // java.lang.Integer sum
         1: .line 153
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 3 /* i */
        start local 3 // java.lang.Integer i
         2: goto 5
         3: .line 154
      StackMap locals: java.lang.Integer java.lang.Integer
      StackMap stack:
            aload 2 /* sum */
            invokevirtual java.lang.Integer.intValue:()I
            aload 3 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            iadd
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 2 /* sum */
         4: .line 153
            aload 3 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            iconst_1
            iadd
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 3 /* i */
      StackMap locals:
      StackMap stack:
         5: aload 3 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            iload 0 /* n */
            if_icmplt 3
        end local 3 // java.lang.Integer i
         6: .line 156
            aload 2 /* sum */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
        end local 2 // java.lang.Integer sum
        end local 1 // java.lang.Integer a
        end local 0 // int n
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     n  I
            0    7     1     a  Ljava/lang/Integer;
            1    7     2   sum  Ljava/lang/Integer;
            2    6     3     i  Ljava/lang/Integer;
    MethodParameters:
      Name  Flags
      n     
      a     

  public static int referenceLoop2Snippet(int, java.lang.Integer);
    descriptor: (ILjava/lang/Integer;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // int n
        start local 1 // java.lang.Integer a
         0: .line 161
            iload 0 /* n */
            ifgt 3
         1: .line 162
            aload 1 /* a */
            astore 2 /* sum0 */
        start local 2 // java.lang.Integer sum0
         2: .line 163
            goto 10
        end local 2 // java.lang.Integer sum0
         3: .line 164
      StackMap locals:
      StackMap stack:
            aload 1 /* a */
            invokevirtual java.lang.Integer.intValue:()I
            istore 3 /* sum */
        start local 3 // int sum
         4: .line 165
            iconst_1
            istore 4 /* i */
        start local 4 // int i
         5: goto 8
         6: .line 166
      StackMap locals: int java.lang.Integer top int int
      StackMap stack:
            iload 3 /* sum */
            iload 4 /* i */
            iadd
            istore 3 /* sum */
         7: .line 165
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            iload 0 /* n */
            if_icmplt 6
        end local 4 // int i
         9: .line 168
            iload 3 /* sum */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 2 /* sum0 */
        end local 3 // int sum
        start local 2 // java.lang.Integer sum0
        10: .line 170
      StackMap locals: int java.lang.Integer java.lang.Integer
      StackMap stack:
            aload 2 /* sum0 */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
        end local 2 // java.lang.Integer sum0
        end local 1 // java.lang.Integer a
        end local 0 // int n
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0     n  I
            0   11     1     a  Ljava/lang/Integer;
            2    3     2  sum0  Ljava/lang/Integer;
           10   11     2  sum0  Ljava/lang/Integer;
            4   10     3   sum  I
            5    9     4     i  I
    MethodParameters:
      Name  Flags
      n     
      a     

  public static int referenceIfSnippet(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // int a
         0: .line 175
            iload 0 /* a */
            ifge 3
         1: .line 176
            iconst_2
            istore 1 /* result */
        start local 1 // int result
         2: .line 177
            goto 4
        end local 1 // int result
         3: .line 178
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 1 /* result */
        start local 1 // int result
         4: .line 180
      StackMap locals: int
      StackMap stack:
            iload 1 /* result */
            ireturn
        end local 1 // int result
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0       a  I
            2    3     1  result  I
            4    5     1  result  I
    MethodParameters:
      Name  Flags
      a     

  public void testIf();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 185
            aload 0 /* this */
            ldc "testIfSnippet"
            ldc "referenceIfSnippet"
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.compareGraphs:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 186
            return
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public static int testIfSnippet(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // int a
         0: .line 190
            iload 0 /* a */
            ifge 3
         1: .line 191
            invokestatic org.graalvm.compiler.core.test.BoxingEliminationTest.boxedInteger:()Ljava/lang/Integer;
            astore 1 /* result */
        start local 1 // java.lang.Integer result
         2: .line 192
            goto 4
        end local 1 // java.lang.Integer result
         3: .line 193
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.core.test.BoxingEliminationTest.boxedObjectInteger:()Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 1 /* result */
        start local 1 // java.lang.Integer result
         4: .line 195
      StackMap locals: java.lang.Integer
      StackMap stack:
            aload 1 /* result */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
        end local 1 // java.lang.Integer result
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0       a  I
            2    3     1  result  Ljava/lang/Integer;
            4    5     1  result  Ljava/lang/Integer;
    MethodParameters:
      Name  Flags
      a     

  public void testComparison();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 200
            aload 0 /* this */
            ldc "testComparison1Snippet"
            ldc "referenceComparisonSnippet"
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.compareGraphs:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 201
            aload 0 /* this */
            ldc "testComparison2Snippet"
            ldc "referenceComparisonSnippet"
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.compareGraphs:(Ljava/lang/String;Ljava/lang/String;)V
         2: .line 202
            return
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public static boolean testComparison1Snippet(int, int);
    descriptor: (II)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int a
        start local 1 // int b
         0: .line 206
            iload 0 /* a */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            iload 1 /* b */
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // int b
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     a  I
            0    2     1     b  I
    MethodParameters:
      Name  Flags
      a     
      b     

  public static boolean testComparison2Snippet(int, int);
    descriptor: (II)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // int a
        start local 1 // int b
         0: .line 210
            iload 0 /* a */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 2 /* x */
        start local 2 // java.lang.Integer x
         1: .line 211
            iload 1 /* b */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 3 /* y */
        start local 3 // java.lang.Integer y
         2: .line 212
            aload 2 /* x */
            aload 3 /* y */
            if_acmpne 3
            iconst_1
            ireturn
      StackMap locals: java.lang.Integer java.lang.Integer
      StackMap stack:
         3: iconst_0
            ireturn
        end local 3 // java.lang.Integer y
        end local 2 // java.lang.Integer x
        end local 1 // int b
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     a  I
            0    4     1     b  I
            1    4     2     x  Ljava/lang/Integer;
            2    4     3     y  Ljava/lang/Integer;
    MethodParameters:
      Name  Flags
      a     
      b     

  public static boolean referenceComparisonSnippet(int, int);
    descriptor: (II)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int a
        start local 1 // int b
         0: .line 216
            iload 0 /* a */
            iload 1 /* b */
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // int b
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     a  I
            0    2     1     b  I
    MethodParameters:
      Name  Flags
      a     
      b     

  public void testLateCanonicalization();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 221
            aload 0 /* this */
            ldc "testLateCanonicalizationSnippet"
            ldc "referenceLateCanonicalizationSnippet"
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.compareGraphs:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 222
            return
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public static boolean testLateCanonicalizationSnippet(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // int a
         0: .line 225
            iload 0 /* a */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 1 /* x */
        start local 1 // java.lang.Integer x
         1: .line 226
            sipush 1000
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 2 /* y */
        start local 2 // java.lang.Integer y
         2: .line 227
            aload 1 /* x */
            aload 2 /* y */
            if_acmpne 3
            iconst_1
            ireturn
      StackMap locals: java.lang.Integer java.lang.Integer
      StackMap stack:
         3: iconst_0
            ireturn
        end local 2 // java.lang.Integer y
        end local 1 // java.lang.Integer x
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     a  I
            1    4     1     x  Ljava/lang/Integer;
            2    4     2     y  Ljava/lang/Integer;
    MethodParameters:
      Name  Flags
      a     

  public static boolean referenceLateCanonicalizationSnippet(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int a
         0: .line 231
            iload 0 /* a */
            sipush 1000
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     a  I
    MethodParameters:
      Name  Flags
      a     

  public static java.lang.Integer materializeReferenceSnippet(int);
    descriptor: (I)Ljava/lang/Integer;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // int a
         0: .line 237
            iload 0 /* a */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            areturn
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  I
    MethodParameters:
      Name  Flags
      a     

  public static java.lang.Integer materializeTest1Snippet(int);
    descriptor: (I)Ljava/lang/Integer;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // int a
         0: .line 241
            iload 0 /* a */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 1 /* v */
        start local 1 // java.lang.Integer v
         1: .line 243
            aload 1 /* v */
            invokevirtual java.lang.Integer.intValue:()I
            iload 0 /* a */
            if_icmpne 3
         2: .line 244
            aload 1 /* v */
            areturn
         3: .line 246
      StackMap locals: java.lang.Integer
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.lang.Integer v
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     a  I
            1    4     1     v  Ljava/lang/Integer;
    MethodParameters:
      Name  Flags
      a     

  public void materializeTest1();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 252
            aload 0 /* this */
            ldc "materializeTest1Snippet"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iconst_1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
            pop
         1: .line 253
            return
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public static java.lang.Float materializeTest2Snippet(float);
    descriptor: (F)Ljava/lang/Float;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // float a
         0: .line 256
            fload 0 /* a */
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            astore 1 /* v */
        start local 1 // java.lang.Float v
         1: .line 258
            aload 1 /* v */
            invokevirtual java.lang.Float.floatValue:()F
            fload 0 /* a */
            fcmpl
            ifne 3
         2: .line 259
            aload 1 /* v */
            areturn
         3: .line 261
      StackMap locals: java.lang.Float
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.lang.Float v
        end local 0 // float a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     a  F
            1    4     1     v  Ljava/lang/Float;
    MethodParameters:
      Name  Flags
      a     

  public void materializeTest2();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 267
            aload 0 /* this */
            ldc "materializeTest2Snippet"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            fconst_1
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            aastore
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
            pop
         1: .line 268
            return
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public static int intTest1Snippet();
    descriptor: ()I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 271
            iconst_1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void intTest1();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 276
            aload 0 /* this */
            ldc "intTest1Snippet"
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.getResult:(Ljava/lang/String;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 1 /* result */
        start local 1 // org.graalvm.compiler.nodes.ValueNode result
         1: .line 277
            aload 1 /* result */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         2: .line 278
            lconst_1
            aload 1 /* result */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         3: .line 279
            return
        end local 1 // org.graalvm.compiler.nodes.ValueNode result
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
            1    4     1  result  Lorg/graalvm/compiler/nodes/ValueNode;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public static int mergeTest1Snippet(boolean, int, int);
    descriptor: (ZII)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=4, args_size=3
        start local 0 // boolean d
        start local 1 // int a
        start local 2 // int b
         0: .line 283
            iload 0 /* d */
            ifeq 3
         1: .line 284
            iload 1 /* a */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 3 /* v */
        start local 3 // java.lang.Integer v
         2: .line 285
            goto 4
        end local 3 // java.lang.Integer v
         3: .line 286
      StackMap locals:
      StackMap stack:
            iload 2 /* b */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 3 /* v */
        start local 3 // java.lang.Integer v
         4: .line 288
      StackMap locals: java.lang.Integer
      StackMap stack:
            aload 3 /* v */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
        end local 3 // java.lang.Integer v
        end local 2 // int b
        end local 1 // int a
        end local 0 // boolean d
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     d  Z
            0    5     1     a  I
            0    5     2     b  I
            2    3     3     v  Ljava/lang/Integer;
            4    5     3     v  Ljava/lang/Integer;
    MethodParameters:
      Name  Flags
      d     
      a     
      b     

  public void mergeTest1();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 293
            aload 0 /* this */
            ldc "mergeTest1Snippet"
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.processMethod:(Ljava/lang/String;)V
         1: .line 294
            return
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public static boolean equalsTest1Snippet(int, int);
    descriptor: (II)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // int x
        start local 1 // int y
         0: .line 297
            iload 0 /* x */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 2 /* a */
        start local 2 // java.lang.Integer a
         1: .line 298
            iload 1 /* y */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 3 /* b */
        start local 3 // java.lang.Integer b
         2: .line 299
            aload 2 /* a */
            aload 3 /* b */
            if_acmpne 3
            iconst_1
            ireturn
      StackMap locals: java.lang.Integer java.lang.Integer
      StackMap stack:
         3: iconst_0
            ireturn
        end local 3 // java.lang.Integer b
        end local 2 // java.lang.Integer a
        end local 1 // int y
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     x  I
            0    4     1     y  I
            1    4     2     a  Ljava/lang/Integer;
            2    4     3     b  Ljava/lang/Integer;
    MethodParameters:
      Name  Flags
      x     
      y     

  public void equalsTest1();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 304
            aload 0 /* this */
            ldc "equalsTest1Snippet"
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.processMethod:(Ljava/lang/String;)V
         1: .line 305
            return
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public static int loopTest1Snippet(int, int);
    descriptor: (II)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // int n
        start local 1 // int v
         0: .line 308
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 2 /* sum */
        start local 2 // java.lang.Integer sum
         1: .line 309
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 5
         3: .line 310
      StackMap locals: java.lang.Integer int
      StackMap stack:
            aload 2 /* sum */
            invokevirtual java.lang.Integer.intValue:()I
            iload 1 /* v */
            iadd
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 2 /* sum */
         4: .line 309
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            iload 0 /* n */
            if_icmplt 3
        end local 3 // int i
         6: .line 312
            aload 2 /* sum */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
        end local 2 // java.lang.Integer sum
        end local 1 // int v
        end local 0 // int n
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     n  I
            0    7     1     v  I
            1    7     2   sum  Ljava/lang/Integer;
            2    6     3     i  I
    MethodParameters:
      Name  Flags
      n     
      v     

  public void loopTest1();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
         0: .line 317
            aload 0 /* this */
            ldc "loopTest1Snippet"
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.processMethod:(Ljava/lang/String;)V
         1: .line 319
            return
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  final org.graalvm.compiler.nodes.ValueNode getResult(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
        start local 1 // java.lang.String snippet
         0: .line 322
            aload 0 /* this */
            aload 1 /* snippet */
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.processMethod:(Ljava/lang/String;)V
         1: .line 323
            aload 0 /* this */
            iconst_1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 0 /* this */
            getfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            getstatic org.graalvm.compiler.nodes.ReturnNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:(Lorg/graalvm/compiler/graph/NodeClass;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.count:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.assertDeepEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 324
            aload 0 /* this */
            getfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            getstatic org.graalvm.compiler.nodes.ReturnNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:(Lorg/graalvm/compiler/graph/NodeClass;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.first:()Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ReturnNode
            invokevirtual org.graalvm.compiler.nodes.ReturnNode.result:()Lorg/graalvm/compiler/nodes/ValueNode;
            areturn
        end local 1 // java.lang.String snippet
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
            0    3     1  snippet  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      snippet  

  private void processMethod(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
        start local 1 // java.lang.String snippet
         0: .line 328
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* snippet */
            getstatic org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions.NO:Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.parseEager:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;)Lorg/graalvm/compiler/nodes/StructuredGraph;
            putfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
         1: .line 329
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.getDefaultHighTierContext:()Lorg/graalvm/compiler/phases/tiers/HighTierContext;
            astore 2 /* context */
        start local 2 // org.graalvm.compiler.phases.tiers.HighTierContext context
         2: .line 330
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.createInliningPhase:()Lorg/graalvm/compiler/phases/BasePhase;
            aload 0 /* this */
            getfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 2 /* context */
            invokevirtual org.graalvm.compiler.phases.BasePhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
         3: .line 331
            new org.graalvm.compiler.virtual.phases.ea.PartialEscapePhase
            dup
            iconst_0
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.createCanonicalizerPhase:()Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
            aload 0 /* this */
            getfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            invokespecial org.graalvm.compiler.virtual.phases.ea.PartialEscapePhase.<init>:(ZLorg/graalvm/compiler/phases/common/CanonicalizerPhase;Lorg/graalvm/compiler/options/OptionValues;)V
            aload 0 /* this */
            getfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 2 /* context */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapePhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
         4: .line 332
            return
        end local 2 // org.graalvm.compiler.phases.tiers.HighTierContext context
        end local 1 // java.lang.String snippet
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
            0    5     1  snippet  Ljava/lang/String;
            2    5     2  context  Lorg/graalvm/compiler/phases/tiers/HighTierContext;
    MethodParameters:
         Name  Flags
      snippet  final

  private void compareGraphs(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
        start local 1 // java.lang.String snippet
        start local 2 // java.lang.String referenceSnippet
         0: .line 335
            aload 0 /* this */
            aload 1 /* snippet */
            aload 2 /* referenceSnippet */
            iconst_0
            iconst_0
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.compareGraphs:(Ljava/lang/String;Ljava/lang/String;ZZ)V
         1: .line 336
            return
        end local 2 // java.lang.String referenceSnippet
        end local 1 // java.lang.String snippet
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
            0    2     1           snippet  Ljava/lang/String;
            0    2     2  referenceSnippet  Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      snippet           final
      referenceSnippet  final

  private void compareGraphs(java.lang.String, java.lang.String, boolean, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;ZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=5
        start local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
        start local 1 // java.lang.String snippet
        start local 2 // java.lang.String referenceSnippet
        start local 3 // boolean loopPeeling
        start local 4 // boolean excludeVirtual
         0: .line 339
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* snippet */
            getstatic org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions.NO:Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.parseEager:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;)Lorg/graalvm/compiler/nodes/StructuredGraph;
            putfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
         1: .line 340
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.getDefaultHighTierContext:()Lorg/graalvm/compiler/phases/tiers/HighTierContext;
            astore 5 /* context */
        start local 5 // org.graalvm.compiler.phases.tiers.HighTierContext context
         2: .line 341
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.createCanonicalizerPhase:()Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
            astore 6 /* canonicalizer */
        start local 6 // org.graalvm.compiler.phases.common.CanonicalizerPhase canonicalizer
         3: .line 342
            aload 6 /* canonicalizer */
            aload 0 /* this */
            getfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 5 /* context */
            invokevirtual org.graalvm.compiler.phases.common.CanonicalizerPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
         4: .line 343
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.createInliningPhase:()Lorg/graalvm/compiler/phases/BasePhase;
            aload 0 /* this */
            getfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 5 /* context */
            invokevirtual org.graalvm.compiler.phases.BasePhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
         5: .line 344
            iload 3 /* loopPeeling */
            ifeq 7
         6: .line 345
            new org.graalvm.compiler.loop.phases.LoopPeelingPhase
            dup
            new org.graalvm.compiler.loop.DefaultLoopPolicies
            dup
            invokespecial org.graalvm.compiler.loop.DefaultLoopPolicies.<init>:()V
            invokespecial org.graalvm.compiler.loop.phases.LoopPeelingPhase.<init>:(Lorg/graalvm/compiler/loop/LoopPolicies;)V
            aload 0 /* this */
            getfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 5 /* context */
            invokevirtual org.graalvm.compiler.loop.phases.LoopPeelingPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
         7: .line 347
      StackMap locals: org.graalvm.compiler.phases.tiers.HighTierContext org.graalvm.compiler.phases.common.CanonicalizerPhase
      StackMap stack:
            new org.graalvm.compiler.phases.common.DeadCodeEliminationPhase
            dup
            invokespecial org.graalvm.compiler.phases.common.DeadCodeEliminationPhase.<init>:()V
            aload 0 /* this */
            getfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.phases.common.DeadCodeEliminationPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
         8: .line 348
            aload 6 /* canonicalizer */
            aload 0 /* this */
            getfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 5 /* context */
            invokevirtual org.graalvm.compiler.phases.common.CanonicalizerPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
         9: .line 349
            new org.graalvm.compiler.virtual.phases.ea.PartialEscapePhase
            dup
            iconst_0
            aload 6 /* canonicalizer */
            aload 0 /* this */
            getfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            invokespecial org.graalvm.compiler.virtual.phases.ea.PartialEscapePhase.<init>:(ZLorg/graalvm/compiler/phases/common/CanonicalizerPhase;Lorg/graalvm/compiler/options/OptionValues;)V
            aload 0 /* this */
            getfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 5 /* context */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapePhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
        10: .line 351
            new org.graalvm.compiler.phases.common.DeadCodeEliminationPhase
            dup
            invokespecial org.graalvm.compiler.phases.common.DeadCodeEliminationPhase.<init>:()V
            aload 0 /* this */
            getfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.phases.common.DeadCodeEliminationPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
        11: .line 352
            aload 6 /* canonicalizer */
            aload 0 /* this */
            getfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 5 /* context */
            invokevirtual org.graalvm.compiler.phases.common.CanonicalizerPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
        12: .line 354
            aload 0 /* this */
            aload 2 /* referenceSnippet */
            getstatic org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions.YES:Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.parseEager:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;)Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 7 /* referenceGraph */
        start local 7 // org.graalvm.compiler.nodes.StructuredGraph referenceGraph
        13: .line 355
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.createInliningPhase:()Lorg/graalvm/compiler/phases/BasePhase;
            aload 7 /* referenceGraph */
            aload 5 /* context */
            invokevirtual org.graalvm.compiler.phases.BasePhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
        14: .line 356
            new org.graalvm.compiler.phases.common.DeadCodeEliminationPhase
            dup
            invokespecial org.graalvm.compiler.phases.common.DeadCodeEliminationPhase.<init>:()V
            aload 7 /* referenceGraph */
            invokevirtual org.graalvm.compiler.phases.common.DeadCodeEliminationPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
        15: .line 357
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.createCanonicalizerPhase:()Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
            aload 7 /* referenceGraph */
            aload 5 /* context */
            invokevirtual org.graalvm.compiler.phases.common.CanonicalizerPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
        16: .line 359
            aload 0 /* this */
            aload 7 /* referenceGraph */
            aload 0 /* this */
            getfield org.graalvm.compiler.core.test.BoxingEliminationTest.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            iload 4 /* excludeVirtual */
            iconst_1
            invokevirtual org.graalvm.compiler.core.test.BoxingEliminationTest.assertEquals:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/StructuredGraph;ZZ)V
        17: .line 360
            return
        end local 7 // org.graalvm.compiler.nodes.StructuredGraph referenceGraph
        end local 6 // org.graalvm.compiler.phases.common.CanonicalizerPhase canonicalizer
        end local 5 // org.graalvm.compiler.phases.tiers.HighTierContext context
        end local 4 // boolean excludeVirtual
        end local 3 // boolean loopPeeling
        end local 2 // java.lang.String referenceSnippet
        end local 1 // java.lang.String snippet
        end local 0 // org.graalvm.compiler.core.test.BoxingEliminationTest this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   18     0              this  Lorg/graalvm/compiler/core/test/BoxingEliminationTest;
            0   18     1           snippet  Ljava/lang/String;
            0   18     2  referenceSnippet  Ljava/lang/String;
            0   18     3       loopPeeling  Z
            0   18     4    excludeVirtual  Z
            2   18     5           context  Lorg/graalvm/compiler/phases/tiers/HighTierContext;
            3   18     6     canonicalizer  Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
           13   18     7    referenceGraph  Lorg/graalvm/compiler/nodes/StructuredGraph;
    MethodParameters:
                  Name  Flags
      snippet           final
      referenceSnippet  final
      loopPeeling       final
      excludeVirtual    final
}
SourceFile: "BoxingEliminationTest.java"
InnerClasses:
  public Result = org.graalvm.compiler.core.test.GraalCompilerTest$Result of org.graalvm.compiler.core.test.GraalCompilerTest
  public final AllowAssumptions = org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions of org.graalvm.compiler.nodes.StructuredGraph