public class org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest extends org.graalvm.compiler.truffle.test.PartialEvaluationTest
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest
  super_class: org.graalvm.compiler.truffle.test.PartialEvaluationTest
{
  public static boolean TRACE;
    descriptor: Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 68
            iconst_0
            putstatic org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.TRACE:Z
            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.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 55
            aload 0 /* this */
            invokespecial org.graalvm.compiler.truffle.test.PartialEvaluationTest.<init>:()V
            return
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;

  static int nonExplodedLoop(int);
    descriptor: (I)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // int x
         0: .line 77
            iload 0 /* x */
            iflt 24
            iload 0 /* x */
            bipush 50
            if_icmpge 24
         1: .line 78
            iconst_0
            istore 1 /* result */
        start local 1 // int result
         2: .line 79
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 8
         4: .line 80
      StackMap locals: int int
      StackMap stack:
            iinc 1 /* result */ 1
         5: .line 81
            iload 1 /* result */
            bipush 100
            if_icmple 7
         6: .line 83
            invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreter:()V
         7: .line 79
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* i */
            iload 0 /* x */
            if_icmplt 4
        end local 2 // int i
         9: .line 86
            iload 1 /* result */
            bipush 100
            if_icmple 23
        10: .line 89
            invokestatic org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.boundary:()V
        11: .line 90
            invokestatic org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.boundary:()V
        12: .line 91
            goto 23
      StackMap locals: int int
      StackMap stack: com.oracle.truffle.api.nodes.ControlFlowException
        13: pop
        14: .line 92
            invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreter:()V
            goto 23
        15: .line 93
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            astore 2 /* ex */
        start local 2 // java.lang.RuntimeException ex
        16: .line 95
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        17: goto 21
        18: .line 96
      StackMap locals: java.lang.RuntimeException int
      StackMap stack:
            iload 3 /* i */
            bipush 42
            if_icmpne 20
        19: .line 97
            aload 2 /* ex */
            athrow
        20: .line 95
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 3 /* i */
            iload 1 /* result */
            if_icmplt 18
        end local 3 // int i
        22: .line 100
            invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreter:()V
        end local 2 // java.lang.RuntimeException ex
        23: .line 103
      StackMap locals:
      StackMap stack:
            iload 1 /* result */
            ireturn
        end local 1 // int result
        24: .line 105
      StackMap locals:
      StackMap stack:
            iload 0 /* x */
            ireturn
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   25     0       x  I
            2   24     1  result  I
            3    9     2       i  I
           16   23     2      ex  Ljava/lang/RuntimeException;
           17   22     3       i  I
      Exception table:
        from    to  target  type
          10    12      13  Class com.oracle.truffle.api.nodes.ControlFlowException
          10    12      15  Class java.lang.RuntimeException
    MethodParameters:
      Name  Flags
      x     

  static void boundary();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=0, locals=0, args_size=0
         0: .line 111
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary(transferToInterpreterOnException = false)

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

  private static void assertReturns42(com.oracle.truffle.api.nodes.RootNode);
    descriptor: (Lcom/oracle/truffle/api/nodes/RootNode;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.oracle.truffle.api.nodes.RootNode program
         0: .line 260
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            aload 0 /* program */
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
            iconst_0
            anewarray java.lang.Object
            invokeinterface com.oracle.truffle.api.RootCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
            astore 1 /* result */
        start local 1 // java.lang.Object result
         1: .line 261
            bipush 42
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 262
            return
        end local 1 // java.lang.Object result
        end local 0 // com.oracle.truffle.api.nodes.RootNode program
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  program  Lcom/oracle/truffle/api/nodes/RootNode;
            1    3     1   result  Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      program  

  private void assertPartialEvalEqualsAndRunsCorrect(com.oracle.truffle.api.nodes.RootNode);
    descriptor: (Lcom/oracle/truffle/api/nodes/RootNode;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
        start local 1 // com.oracle.truffle.api.nodes.RootNode program
         0: .line 265
            aload 1 /* program */
            invokestatic org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertReturns42:(Lcom/oracle/truffle/api/nodes/RootNode;)V
         1: .line 266
            aload 0 /* this */
            ldc "constant42"
            aload 1 /* program */
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEquals:(Ljava/lang/String;Lcom/oracle/truffle/api/nodes/RootNode;)Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
            pop
         2: .line 267
            return
        end local 1 // com.oracle.truffle.api.nodes.RootNode program
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
            0    3     1  program  Lcom/oracle/truffle/api/nodes/RootNode;
    MethodParameters:
         Name  Flags
      program  

  public void constReturnProgram();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 271
            iconst_3
            newarray 8
            dup
            iconst_1
         1: .line 273
            bipush 42
            bastore
            dup
            iconst_2
         2: .line 274
            iconst_1
            bastore
         3: .line 271
            astore 1 /* bytecodes */
        start local 1 // byte[] bytecodes
         4: .line 275
            aload 0 /* this */
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
            dup
            ldc "constReturnProgram"
            aload 1 /* bytecodes */
            iconst_0
            iconst_2
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program.<init>:(Ljava/lang/String;[BII)V
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
         5: .line 276
            return
        end local 1 // byte[] bytecodes
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
            4    6     1  bytecodes  [B
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void constAddProgram();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 280
            bipush 6
            newarray 8
            dup
            iconst_1
         1: .line 282
            bipush 40
            bastore
            dup
            iconst_3
         2: .line 284
            iconst_2
            bastore
            dup
            iconst_4
         3: .line 285
            iconst_2
            bastore
            dup
            iconst_5
         4: .line 286
            iconst_1
            bastore
         5: .line 280
            astore 1 /* bytecodes */
        start local 1 // byte[] bytecodes
         6: .line 287
            aload 0 /* this */
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
            dup
            ldc "constAddProgram"
            aload 1 /* bytecodes */
            iconst_0
            iconst_2
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program.<init>:(Ljava/lang/String;[BII)V
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
         7: .line 288
            return
        end local 1 // byte[] bytecodes
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
            6    8     1  bytecodes  [B
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void simpleIfProgram();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 292
            bipush 9
            newarray 8
            dup
            iconst_1
         1: .line 294
            bipush 40
            bastore
            dup
            iconst_3
         2: .line 296
            iconst_1
            bastore
            dup
            iconst_4
         3: .line 297
            iconst_3
            bastore
            dup
            iconst_5
         4: .line 298
            bipush 8
            bastore
            dup
            bipush 7
         5: .line 300
            bipush 42
            bastore
            dup
            bipush 8
         6: .line 301
            iconst_1
            bastore
         7: .line 292
            astore 1 /* bytecodes */
        start local 1 // byte[] bytecodes
         8: .line 302
            aload 0 /* this */
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
            dup
            ldc "simpleIfProgram"
            aload 1 /* bytecodes */
            iconst_0
            iconst_3
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program.<init>:(Ljava/lang/String;[BII)V
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
         9: .line 303
            return
        end local 1 // byte[] bytecodes
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
            8   10     1  bytecodes  [B
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void ifAndPopProgram();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 307
            bipush 10
            newarray 8
            dup
            iconst_1
         1: .line 309
            bipush 40
            bastore
            dup
            iconst_3
         2: .line 311
            iconst_1
            bastore
            dup
            iconst_4
         3: .line 312
            iconst_3
            bastore
            dup
            iconst_5
         4: .line 313
            bipush 9
            bastore
            dup
            bipush 6
         5: .line 314
            iconst_4
            bastore
            dup
            bipush 8
         6: .line 316
            bipush 42
            bastore
            dup
            bipush 9
         7: .line 317
            iconst_1
            bastore
         8: .line 307
            astore 1 /* bytecodes */
        start local 1 // byte[] bytecodes
         9: .line 318
            aload 0 /* this */
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
            dup
            ldc "ifAndPopProgram"
            aload 1 /* bytecodes */
            iconst_0
            iconst_3
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program.<init>:(Ljava/lang/String;[BII)V
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
        10: .line 319
            return
        end local 1 // byte[] bytecodes
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
            9   11     1  bytecodes  [B
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void simpleLoopProgram();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 323
            bipush 14
            newarray 8
            dup
            iconst_1
         1: .line 325
            bipush 42
            bastore
            dup
            iconst_3
         2: .line 327
            bipush -12
            bastore
            dup
            iconst_5
         3: .line 329
            iconst_1
            bastore
            dup
            bipush 6
         4: .line 330
            iconst_2
            bastore
            dup
            bipush 7
         5: .line 331
            bipush 6
            bastore
            dup
            bipush 8
         6: .line 332
            iconst_3
            bastore
            dup
            bipush 9
         7: .line 333
            bipush 12
            bastore
            dup
            bipush 10
         8: .line 334
            iconst_5
            bastore
            dup
            bipush 11
         9: .line 335
            iconst_4
            bastore
            dup
            bipush 12
        10: .line 336
            iconst_4
            bastore
            dup
            bipush 13
        11: .line 337
            iconst_1
            bastore
        12: .line 323
            astore 1 /* bytecodes */
        start local 1 // byte[] bytecodes
        13: .line 338
            aload 0 /* this */
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
            dup
            ldc "simpleLoopProgram"
            aload 1 /* bytecodes */
            iconst_0
            iconst_3
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program.<init>:(Ljava/lang/String;[BII)V
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
        14: .line 339
            return
        end local 1 // byte[] bytecodes
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0       this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
           13   15     1  bytecodes  [B
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void nestedLoopsProgram();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 343
            bipush 25
            newarray 8
            dup
            iconst_1
         1: .line 345
            bipush 42
            bastore
            dup
            iconst_3
         2: .line 347
            bipush -2
            bastore
            dup
            iconst_5
         3: .line 349
            iconst_1
            bastore
            dup
            bipush 6
         4: .line 350
            iconst_2
            bastore
            dup
            bipush 7
         5: .line 351
            bipush 6
            bastore
            dup
            bipush 9
         6: .line 353
            bipush -2
            bastore
            dup
            bipush 11
         7: .line 355
            iconst_1
            bastore
            dup
            bipush 12
         8: .line 356
            iconst_2
            bastore
            dup
            bipush 13
         9: .line 357
            bipush 6
            bastore
            dup
            bipush 14
        10: .line 358
            iconst_3
            bastore
            dup
            bipush 15
        11: .line 359
            bipush 18
            bastore
            dup
            bipush 16
        12: .line 360
            iconst_5
            bastore
            dup
            bipush 17
        13: .line 361
            bipush 10
            bastore
            dup
            bipush 18
        14: .line 362
            iconst_4
            bastore
            dup
            bipush 19
        15: .line 363
            iconst_3
            bastore
            dup
            bipush 20
        16: .line 364
            bipush 23
            bastore
            dup
            bipush 21
        17: .line 365
            iconst_5
            bastore
            dup
            bipush 22
        18: .line 366
            iconst_4
            bastore
            dup
            bipush 23
        19: .line 367
            iconst_4
            bastore
            dup
            bipush 24
        20: .line 368
            iconst_1
            bastore
        21: .line 343
            astore 1 /* bytecodes */
        start local 1 // byte[] bytecodes
        22: .line 369
            aload 0 /* this */
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
            dup
            ldc "nestedLoopsProgram"
            aload 1 /* bytecodes */
            iconst_0
            bipush 6
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program.<init>:(Ljava/lang/String;[BII)V
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
        23: .line 370
            return
        end local 1 // byte[] bytecodes
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   24     0       this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
           22   24     1  bytecodes  [B
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void nestedLoopsProgram2();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 374
            bipush 32
            newarray 8
            dup
            iconst_1
         1: .line 376
            bipush 42
            bastore
            dup
            iconst_3
         2: .line 378
            bipush -2
            bastore
            dup
            iconst_5
         3: .line 380
            iconst_1
            bastore
            dup
            bipush 6
         4: .line 381
            iconst_2
            bastore
            dup
            bipush 7
         5: .line 382
            bipush 6
            bastore
            dup
            bipush 9
         6: .line 384
            bipush -2
            bastore
            dup
            bipush 12
         7: .line 388
            iconst_3
            bastore
            dup
            bipush 13
         8: .line 389
            bipush 17
            bastore
            dup
            bipush 14
         9: .line 390
            iconst_4
            bastore
            dup
            bipush 15
        10: .line 391
            iconst_5
            bastore
            dup
            bipush 16
        11: .line 392
            bipush 30
            bastore
            dup
            bipush 18
        12: .line 395
            iconst_1
            bastore
            dup
            bipush 19
        13: .line 396
            iconst_2
            bastore
            dup
            bipush 20
        14: .line 397
            bipush 6
            bastore
            dup
            bipush 21
        15: .line 398
            iconst_3
            bastore
            dup
            bipush 22
        16: .line 399
            bipush 25
            bastore
            dup
            bipush 23
        17: .line 400
            iconst_5
            bastore
            dup
            bipush 24
        18: .line 401
            bipush 10
            bastore
            dup
            bipush 25
        19: .line 402
            iconst_4
            bastore
            dup
            bipush 26
        20: .line 403
            iconst_3
            bastore
            dup
            bipush 27
        21: .line 404
            bipush 30
            bastore
            dup
            bipush 28
        22: .line 405
            iconst_5
            bastore
            dup
            bipush 29
        23: .line 406
            iconst_4
            bastore
            dup
            bipush 30
        24: .line 407
            iconst_4
            bastore
            dup
            bipush 31
        25: .line 408
            iconst_1
            bastore
        26: .line 374
            astore 1 /* bytecodes */
        start local 1 // byte[] bytecodes
        27: .line 409
            aload 0 /* this */
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
            dup
            ldc "nestedLoopsProgram2"
            aload 1 /* bytecodes */
            iconst_0
            bipush 6
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program.<init>:(Ljava/lang/String;[BII)V
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
        28: .line 410
            return
        end local 1 // byte[] bytecodes
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   29     0       this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
           27   29     1  bytecodes  [B
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void nestedLoopsProgram3();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 414
            bipush 24
            newarray 8
            dup
            iconst_1
         1: .line 416
            bipush 42
            bastore
            dup
            iconst_3
         2: .line 418
            bipush -2
            bastore
            dup
            iconst_4
         3: .line 419
            bipush 6
            bastore
            dup
            iconst_5
         4: .line 421
            iconst_4
            bastore
            dup
            bipush 6
         5: .line 422
            bipush 6
            bastore
            dup
            bipush 7
         6: .line 423
            iconst_3
            bastore
            dup
            bipush 8
         7: .line 424
            bipush 22
            bastore
            dup
            bipush 10
         8: .line 427
            iconst_1
            bastore
            dup
            bipush 11
         9: .line 428
            iconst_2
            bastore
            dup
            bipush 13
        10: .line 430
            bipush -2
            bastore
            dup
            bipush 14
        11: .line 432
            bipush 6
            bastore
            dup
            bipush 15
        12: .line 433
            iconst_3
            bastore
            dup
            bipush 16
        13: .line 434
            iconst_5
            bastore
            dup
            bipush 18
        14: .line 436
            iconst_1
            bastore
            dup
            bipush 19
        15: .line 437
            iconst_2
            bastore
            dup
            bipush 20
        16: .line 438
            iconst_5
            bastore
            dup
            bipush 21
        17: .line 439
            bipush 14
            bastore
            dup
            bipush 22
        18: .line 441
            iconst_4
            bastore
            dup
            bipush 23
        19: .line 442
            iconst_1
            bastore
        20: .line 414
            astore 1 /* bytecodes */
        start local 1 // byte[] bytecodes
        21: .line 443
            aload 0 /* this */
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
            dup
            ldc "nestedLoopsProgram"
            aload 1 /* bytecodes */
            iconst_0
            bipush 8
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program.<init>:(Ljava/lang/String;[BII)V
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
        22: .line 444
            return
        end local 1 // byte[] bytecodes
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   23     0       this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
           21   23     1  bytecodes  [B
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void irreducibleLoop01();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 448
            bipush 14
            newarray 8
            dup
            iconst_2
         1: .line 451
            iconst_3
            bastore
            dup
            iconst_3
         2: .line 452
            bipush 7
            bastore
            dup
            iconst_5
         3: .line 454
            iconst_1
            bastore
            dup
            bipush 6
         4: .line 455
            iconst_4
            bastore
            dup
            bipush 8
         5: .line 457
            iconst_1
            bastore
            dup
            bipush 9
         6: .line 458
            iconst_3
            bastore
            dup
            bipush 10
         7: .line 459
            iconst_4
            bastore
            dup
            bipush 12
         8: .line 461
            bipush 42
            bastore
            dup
            bipush 13
         9: .line 462
            iconst_1
            bastore
        10: .line 448
            astore 1 /* bytecodes */
        start local 1 // byte[] bytecodes
        11: .line 463
            aload 0 /* this */
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
            dup
            ldc "irreducibleLoop01"
            aload 1 /* bytecodes */
            iconst_0
            iconst_3
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program.<init>:(Ljava/lang/String;[BII)V
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
        12: .line 464
            return
        end local 1 // byte[] bytecodes
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     0       this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
           11   13     1  bytecodes  [B
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void irreducibleLoop02();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 468
            bipush 18
            newarray 8
            dup
            iconst_2
         1: .line 471
            iconst_3
            bastore
            dup
            iconst_3
         2: .line 472
            bipush 7
            bastore
            dup
            iconst_5
         3: .line 474
            iconst_1
            bastore
            dup
            bipush 6
         4: .line 475
            iconst_4
            bastore
            dup
            bipush 8
         5: .line 477
            iconst_1
            bastore
            dup
            bipush 9
         6: .line 478
            iconst_3
            bastore
            dup
            bipush 10
         7: .line 479
            iconst_4
            bastore
            dup
            bipush 12
         8: .line 481
            iconst_1
            bastore
            dup
            bipush 13
         9: .line 482
            iconst_3
            bastore
            dup
            bipush 16
        10: .line 485
            bipush 42
            bastore
            dup
            bipush 17
        11: .line 486
            iconst_1
            bastore
        12: .line 468
            astore 1 /* bytecodes */
        start local 1 // byte[] bytecodes
        13: .line 487
            aload 0 /* this */
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
            dup
            ldc "irreducibleLoop02"
            aload 1 /* bytecodes */
            iconst_0
            iconst_3
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program.<init>:(Ljava/lang/String;[BII)V
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
        14: .line 488
            return
        end local 1 // byte[] bytecodes
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0       this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
           13   15     1  bytecodes  [B
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void irreducibleLoop03();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 492
            bipush 25
            newarray 8
            dup
            iconst_1
         1: .line 494
            iconst_1
            bastore
            dup
            iconst_2
         2: .line 495
            iconst_4
            bastore
            dup
            iconst_5
         3: .line 498
            iconst_3
            bastore
            dup
            bipush 6
         4: .line 499
            bipush 10
            bastore
            dup
            bipush 8
         5: .line 501
            iconst_1
            bastore
            dup
            bipush 9
         6: .line 502
            iconst_4
            bastore
            dup
            bipush 11
         7: .line 504
            iconst_1
            bastore
            dup
            bipush 12
         8: .line 505
            iconst_3
            bastore
            dup
            bipush 13
         9: .line 506
            bipush 7
            bastore
            dup
            bipush 15
        10: .line 508
            iconst_1
            bastore
            dup
            bipush 16
        11: .line 509
            iconst_3
            bastore
            dup
            bipush 17
        12: .line 510
            iconst_3
            bastore
            dup
            bipush 19
        13: .line 513
            iconst_1
            bastore
            dup
            bipush 20
        14: .line 514
            iconst_3
            bastore
            dup
            bipush 21
        15: .line 515
            bipush 18
            bastore
            dup
            bipush 23
        16: .line 518
            bipush 42
            bastore
            dup
            bipush 24
        17: .line 519
            iconst_1
            bastore
        18: .line 492
            astore 1 /* bytecodes */
        start local 1 // byte[] bytecodes
        19: .line 520
            aload 0 /* this */
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
            dup
            ldc "irreducibleLoop03"
            aload 1 /* bytecodes */
            iconst_0
            iconst_3
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program.<init>:(Ljava/lang/String;[BII)V
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
        20: .line 521
            return
        end local 1 // byte[] bytecodes
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   21     0       this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
           19   21     1  bytecodes  [B
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void irreducibleLoop04();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 525
            bipush 22
            newarray 8
            dup
            iconst_2
         1: .line 528
            iconst_3
            bastore
            dup
            iconst_3
         2: .line 529
            bipush 7
            bastore
            dup
            iconst_5
         3: .line 531
            iconst_1
            bastore
            dup
            bipush 6
         4: .line 532
            iconst_4
            bastore
            dup
            bipush 8
         5: .line 535
            iconst_1
            bastore
            dup
            bipush 9
         6: .line 536
            iconst_3
            bastore
            dup
            bipush 10
         7: .line 537
            bipush 7
            bastore
            dup
            bipush 12
         8: .line 540
            iconst_1
            bastore
            dup
            bipush 13
         9: .line 541
            iconst_3
            bastore
            dup
            bipush 14
        10: .line 542
            iconst_4
            bastore
            dup
            bipush 16
        11: .line 545
            iconst_1
            bastore
            dup
            bipush 17
        12: .line 546
            iconst_3
            bastore
            dup
            bipush 18
        13: .line 547
            bipush 15
            bastore
            dup
            bipush 20
        14: .line 550
            bipush 42
            bastore
            dup
            bipush 21
        15: .line 551
            iconst_1
            bastore
        16: .line 525
            astore 1 /* bytecodes */
        start local 1 // byte[] bytecodes
        17: .line 552
            aload 0 /* this */
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
            dup
            ldc "irreducibleLoop04"
            aload 1 /* bytecodes */
            iconst_0
            iconst_3
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program.<init>:(Ljava/lang/String;[BII)V
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
        18: .line 553
            return
        end local 1 // byte[] bytecodes
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   19     0       this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
           17   19     1  bytecodes  [B
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void manyIfsProgram();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=21, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 557
            bipush 45
            newarray 8
            dup
            iconst_1
         1: .line 559
            bipush 40
            bastore
            dup
            iconst_3
         2: .line 561
            iconst_1
            bastore
            dup
            iconst_4
         3: .line 562
            iconst_3
            bastore
            dup
            iconst_5
         4: .line 563
            bipush 8
            bastore
            dup
            bipush 7
         5: .line 565
            iconst_1
            bastore
            dup
            bipush 8
         6: .line 566
            iconst_3
            bastore
            dup
            bipush 9
         7: .line 567
            bipush 12
            bastore
            dup
            bipush 11
         8: .line 569
            iconst_1
            bastore
            dup
            bipush 12
         9: .line 570
            iconst_3
            bastore
            dup
            bipush 13
        10: .line 571
            bipush 16
            bastore
            dup
            bipush 15
        11: .line 573
            iconst_1
            bastore
            dup
            bipush 16
        12: .line 574
            iconst_3
            bastore
            dup
            bipush 17
        13: .line 575
            bipush 20
            bastore
            dup
            bipush 19
        14: .line 577
            iconst_1
            bastore
            dup
            bipush 20
        15: .line 578
            iconst_3
            bastore
            dup
            bipush 21
        16: .line 579
            bipush 24
            bastore
            dup
            bipush 23
        17: .line 581
            iconst_1
            bastore
            dup
            bipush 24
        18: .line 582
            iconst_3
            bastore
            dup
            bipush 25
        19: .line 583
            bipush 28
            bastore
            dup
            bipush 27
        20: .line 585
            iconst_1
            bastore
            dup
            bipush 28
        21: .line 586
            iconst_3
            bastore
            dup
            bipush 29
        22: .line 587
            bipush 32
            bastore
            dup
            bipush 31
        23: .line 589
            iconst_1
            bastore
            dup
            bipush 32
        24: .line 590
            iconst_3
            bastore
            dup
            bipush 33
        25: .line 591
            bipush 36
            bastore
            dup
            bipush 35
        26: .line 593
            iconst_1
            bastore
            dup
            bipush 36
        27: .line 594
            iconst_3
            bastore
            dup
            bipush 37
        28: .line 595
            bipush 40
            bastore
            dup
            bipush 39
        29: .line 597
            iconst_1
            bastore
            dup
            bipush 40
        30: .line 598
            iconst_3
            bastore
            dup
            bipush 41
        31: .line 599
            bipush 44
            bastore
            dup
            bipush 43
        32: .line 601
            bipush 42
            bastore
            dup
            bipush 44
        33: .line 602
            iconst_1
            bastore
        34: .line 557
            astore 1 /* bytecodes */
        start local 1 // byte[] bytecodes
        35: .line 603
            iconst_5
            newarray 11
            astore 2 /* times */
        start local 2 // long[] times
        36: .line 604
            aload 2 /* times */
            arraylength
            anewarray java.lang.String
            astore 3 /* topPhases */
        start local 3 // java.lang.String[] topPhases
        37: .line 605
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        38: goto 61
        39: .line 606
      StackMap locals: org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest byte[] long[] java.lang.String[] int
      StackMap stack:
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 5 /* start */
        start local 5 // long start
        40: .line 607
            aload 0 /* this */
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
            dup
            ldc "manyIfsProgram"
            aload 1 /* bytecodes */
            iconst_0
            iconst_3
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program.<init>:(Ljava/lang/String;[BII)V
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
        41: .line 608
            invokestatic java.lang.System.currentTimeMillis:()J
            lload 5 /* start */
            lsub
            lstore 7 /* duration */
        start local 7 // long duration
        42: .line 609
            aload 2 /* times */
            iload 4 /* i */
            lload 7 /* duration */
            lastore
        43: .line 610
            aload 0 /* this */
            getfield org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.lastDebug:Lorg/graalvm/compiler/debug/DebugContext;
            invokevirtual org.graalvm.compiler.debug.DebugContext.getMetricsSnapshot:()Ljava/util/Map;
            astore 9 /* metrics */
        start local 9 // java.util.Map metrics
        44: .line 611
            new java.util.ArrayList
            dup
            aload 9 /* metrics */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            astore 10 /* entries */
        start local 10 // java.util.List entries
        45: .line 612
            aload 10 /* entries */
            invokedynamic compare()Ljava/util/Comparator;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)I
                  org/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest.lambda$0(Ljava/util/Map$Entry;Ljava/util/Map$Entry;)I (6)
                  (Ljava/util/Map$Entry;Ljava/util/Map$Entry;)I
            invokeinterface java.util.List.sort:(Ljava/util/Comparator;)V
        46: .line 613
            iconst_0
            istore 11 /* printed */
        start local 11 // int printed
        47: .line 614
            new java.util.Formatter
            dup
            invokespecial java.util.Formatter.<init>:()V
            astore 12 /* buf */
        start local 12 // java.util.Formatter buf
        48: .line 615
            aload 10 /* entries */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 14
            goto 58
      StackMap locals: org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest byte[] long[] java.lang.String[] int long long java.util.Map java.util.List int java.util.Formatter top java.util.Iterator
      StackMap stack:
        49: aload 14
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 13 /* e */
        start local 13 // java.util.Map$Entry e
        50: .line 616
            iload 11 /* printed */
            iinc 11 /* printed */ 1
            bipush 20
            if_icmple 52
        51: .line 617
            goto 59
        52: .line 619
      StackMap locals: org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest byte[] long[] java.lang.String[] int long long java.util.Map java.util.List int java.util.Formatter java.util.Map$Entry java.util.Iterator
      StackMap stack:
            aload 13 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.debug.MetricKey
            astore 15 /* key */
        start local 15 // org.graalvm.compiler.debug.MetricKey key
        53: .line 620
            aload 15 /* key */
            instanceof org.graalvm.compiler.debug.TimerKey
            ifeq 58
        54: .line 621
            aload 15 /* key */
            checkcast org.graalvm.compiler.debug.TimerKey
            astore 16 /* timer */
        start local 16 // org.graalvm.compiler.debug.TimerKey timer
        55: .line 622
            aload 13 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
            lstore 17 /* value */
        start local 17 // long value
        56: .line 623
            aload 16 /* timer */
            invokeinterface org.graalvm.compiler.debug.TimerKey.getTimeUnit:()Ljava/util/concurrent/TimeUnit;
            lload 17 /* value */
            invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
            lstore 19 /* ms */
        start local 19 // long ms
        57: .line 624
            aload 12 /* buf */
            ldc "  %s ms\t%s%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            lload 19 /* ms */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_1
            aload 15 /* key */
            invokeinterface org.graalvm.compiler.debug.MetricKey.getName:()Ljava/lang/String;
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
        end local 19 // long ms
        end local 17 // long value
        end local 16 // org.graalvm.compiler.debug.TimerKey timer
        end local 15 // org.graalvm.compiler.debug.MetricKey key
        end local 13 // java.util.Map$Entry e
        58: .line 615
      StackMap locals: org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest byte[] long[] java.lang.String[] int long long java.util.Map java.util.List int java.util.Formatter top java.util.Iterator
      StackMap stack:
            aload 14
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 49
        59: .line 627
      StackMap locals: org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest byte[] long[] java.lang.String[] int long long java.util.Map java.util.List int java.util.Formatter
      StackMap stack:
            aload 3 /* topPhases */
            iload 4 /* i */
            aload 12 /* buf */
            invokevirtual java.util.Formatter.toString:()Ljava/lang/String;
            aastore
        end local 12 // java.util.Formatter buf
        end local 11 // int printed
        end local 10 // java.util.List entries
        end local 9 // java.util.Map metrics
        end local 7 // long duration
        end local 5 // long start
        60: .line 605
            iinc 4 /* i */ 1
      StackMap locals: org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest byte[] long[] java.lang.String[] int
      StackMap stack:
        61: iload 4 /* i */
            aload 2 /* times */
            arraylength
            if_icmplt 39
        end local 4 // int i
        62: .line 629
            sipush 15000
            istore 4 /* limit */
        start local 4 // int limit
        63: .line 630
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        64: goto 77
        65: .line 631
      StackMap locals: int
      StackMap stack:
            aload 2 /* times */
            iload 5 /* i */
            laload
            iload 4 /* limit */
            i2l
            lcmp
            ifle 76
        66: .line 632
            new java.util.Formatter
            dup
            invokespecial java.util.Formatter.<init>:()V
            astore 6 /* msg */
        start local 6 // java.util.Formatter msg
        67: .line 633
            aload 6 /* msg */
            ldc "manyIfsProgram iteration %d took %d ms which is longer than the limit of %d ms%n"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            iload 5 /* i */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            aload 2 /* times */
            iload 5 /* i */
            laload
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_2
            iload 4 /* limit */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
        68: .line 634
            aload 6 /* msg */
            ldc "%nDetailed info for each iteration%n"
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
        69: .line 635
            iconst_0
            istore 7 /* j */
        start local 7 // int j
        70: goto 74
        71: .line 636
      StackMap locals: java.util.Formatter int
      StackMap stack:
            aload 6 /* msg */
            ldc "%nIteration %d took %d ms%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            iload 5 /* i */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            aload 2 /* times */
            iload 5 /* i */
            laload
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
        72: .line 637
            aload 6 /* msg */
            ldc "Top phase times in iteration %d:%n%s%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            iload 5 /* i */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            aload 3 /* topPhases */
            iload 5 /* i */
            aaload
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
        73: .line 635
            iinc 7 /* j */ 1
      StackMap locals:
      StackMap stack:
        74: iload 7 /* j */
            aload 2 /* times */
            arraylength
            if_icmplt 71
        end local 7 // int j
        75: .line 639
            new java.lang.AssertionError
            dup
            aload 6 /* msg */
            invokevirtual java.util.Formatter.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 6 // java.util.Formatter msg
        76: .line 630
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        77: iload 5 /* i */
            aload 2 /* times */
            arraylength
            if_icmplt 65
        end local 5 // int i
        78: .line 643
            lconst_0
            lstore 5 /* maxDuration */
        start local 5 // long maxDuration
        79: .line 644
            lload 5 /* maxDuration */
            iload 4 /* limit */
            i2l
            lcmp
            ifle 81
        80: .line 645
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "manyIfsProgram took "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            lload 5 /* maxDuration */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " ms which is longer than the limit of "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 4 /* limit */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " ms"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        81: .line 647
      StackMap locals: org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest byte[] long[] java.lang.String[] int long
      StackMap stack:
            return
        end local 5 // long maxDuration
        end local 4 // int limit
        end local 3 // java.lang.String[] topPhases
        end local 2 // long[] times
        end local 1 // byte[] bytecodes
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   82     0         this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
           35   82     1    bytecodes  [B
           36   82     2        times  [J
           37   82     3    topPhases  [Ljava/lang/String;
           38   62     4            i  I
           40   60     5        start  J
           42   60     7     duration  J
           44   60     9      metrics  Ljava/util/Map<Lorg/graalvm/compiler/debug/MetricKey;Ljava/lang/Long;>;
           45   60    10      entries  Ljava/util/List<Ljava/util/Map$Entry<Lorg/graalvm/compiler/debug/MetricKey;Ljava/lang/Long;>;>;
           47   60    11      printed  I
           48   60    12          buf  Ljava/util/Formatter;
           50   58    13            e  Ljava/util/Map$Entry<Lorg/graalvm/compiler/debug/MetricKey;Ljava/lang/Long;>;
           53   58    15          key  Lorg/graalvm/compiler/debug/MetricKey;
           55   58    16        timer  Lorg/graalvm/compiler/debug/TimerKey;
           56   58    17        value  J
           57   58    19           ms  J
           63   82     4        limit  I
           64   78     5            i  I
           67   76     6          msg  Ljava/util/Formatter;
           70   75     7            j  I
           79   82     5  maxDuration  J
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  protected org.graalvm.compiler.options.OptionValues getGraalOptions();
    descriptor: ()Lorg/graalvm/compiler/options/OptionValues;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=9, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 651
            new org.graalvm.compiler.options.OptionValues
            dup
            aload 0 /* this */
            invokespecial org.graalvm.compiler.truffle.test.PartialEvaluationTest.getGraalOptions:()Lorg/graalvm/compiler/options/OptionValues;
            getstatic org.graalvm.compiler.debug.DebugOptions.Count:Lorg/graalvm/compiler/options/OptionKey;
            ldc ""
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            getstatic org.graalvm.compiler.debug.DebugOptions.Time:Lorg/graalvm/compiler/options/OptionKey;
            aastore
            dup
            iconst_1
            ldc ""
            aastore
            invokespecial org.graalvm.compiler.options.OptionValues.<init>:(Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/options/OptionKey;Ljava/lang/Object;[Ljava/lang/Object;)V
            areturn
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;

  public void instArraySimpleIfProgram();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=5, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 801
            new com.oracle.truffle.api.frame.FrameDescriptor
            dup
            invokespecial com.oracle.truffle.api.frame.FrameDescriptor.<init>:()V
            astore 1 /* fd */
        start local 1 // com.oracle.truffle.api.frame.FrameDescriptor fd
         1: .line 802
            aload 1 /* fd */
            ldc "value"
            getstatic com.oracle.truffle.api.frame.FrameSlotKind.Int:Lcom/oracle/truffle/api/frame/FrameSlotKind;
            invokevirtual com.oracle.truffle.api.frame.FrameDescriptor.addFrameSlot:(Ljava/lang/Object;Lcom/oracle/truffle/api/frame/FrameSlotKind;)Lcom/oracle/truffle/api/frame/FrameSlot;
            astore 2 /* valueSlot */
        start local 2 // com.oracle.truffle.api.frame.FrameSlot valueSlot
         2: .line 803
            aload 1 /* fd */
            ldc "return"
            getstatic com.oracle.truffle.api.frame.FrameSlotKind.Int:Lcom/oracle/truffle/api/frame/FrameSlotKind;
            invokevirtual com.oracle.truffle.api.frame.FrameDescriptor.addFrameSlot:(Ljava/lang/Object;Lcom/oracle/truffle/api/frame/FrameSlotKind;)Lcom/oracle/truffle/api/frame/FrameSlot;
            astore 3 /* returnSlot */
        start local 3 // com.oracle.truffle.api.frame.FrameSlot returnSlot
         3: .line 804
            bipush 6
            anewarray org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst
            dup
            iconst_0
         4: .line 805
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$Const
            dup
            aload 2 /* valueSlot */
            iconst_1
            iconst_1
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$Const.<init>:(Lcom/oracle/truffle/api/frame/FrameSlot;II)V
            aastore
            dup
            iconst_1
         5: .line 806
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$IfZero
            dup
            aload 2 /* valueSlot */
            iconst_2
            iconst_4
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$IfZero.<init>:(Lcom/oracle/truffle/api/frame/FrameSlot;II)V
            aastore
            dup
            iconst_2
         6: .line 807
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$Const
            dup
            aload 3 /* returnSlot */
            bipush 41
            iconst_3
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$Const.<init>:(Lcom/oracle/truffle/api/frame/FrameSlot;II)V
            aastore
            dup
            iconst_3
         7: .line 808
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$Return
            dup
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$Return.<init>:()V
            aastore
            dup
            iconst_4
         8: .line 809
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$Const
            dup
            aload 3 /* returnSlot */
            bipush 42
            iconst_5
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$Const.<init>:(Lcom/oracle/truffle/api/frame/FrameSlot;II)V
            aastore
            dup
            iconst_5
         9: .line 810
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$Return
            dup
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$Return.<init>:()V
            aastore
        10: .line 804
            astore 4 /* inst */
        start local 4 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst[] inst
        11: .line 811
            aload 0 /* this */
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$InstArrayProgram
            dup
            ldc "instArraySimpleIfProgram"
            aload 4 /* inst */
            aload 3 /* returnSlot */
            aload 1 /* fd */
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$InstArrayProgram.<init>:(Ljava/lang/String;[Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest$Inst;Lcom/oracle/truffle/api/frame/FrameSlot;Lcom/oracle/truffle/api/frame/FrameDescriptor;)V
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
        12: .line 812
            return
        end local 4 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst[] inst
        end local 3 // com.oracle.truffle.api.frame.FrameSlot returnSlot
        end local 2 // com.oracle.truffle.api.frame.FrameSlot valueSlot
        end local 1 // com.oracle.truffle.api.frame.FrameDescriptor fd
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
            1   13     1          fd  Lcom/oracle/truffle/api/frame/FrameDescriptor;
            2   13     2   valueSlot  Lcom/oracle/truffle/api/frame/FrameSlot;
            3   13     3  returnSlot  Lcom/oracle/truffle/api/frame/FrameSlot;
           11   13     4        inst  [Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest$Inst;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void simpleSwitchProgram();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 817
            bipush 15
            newarray 8
            dup
            iconst_1
         1: .line 819
            iconst_1
            bastore
            dup
            iconst_2
         2: .line 820
            bipush 7
            bastore
            dup
            iconst_3
         3: .line 821
            iconst_2
            bastore
            dup
            iconst_4
         4: .line 822
            bipush 9
            bastore
            dup
            iconst_5
         5: .line 823
            bipush 12
            bastore
            dup
            bipush 7
         6: .line 825
            bipush 40
            bastore
            dup
            bipush 8
         7: .line 826
            iconst_1
            bastore
            dup
            bipush 10
         8: .line 828
            bipush 41
            bastore
            dup
            bipush 11
         9: .line 829
            iconst_1
            bastore
            dup
            bipush 13
        10: .line 831
            bipush 42
            bastore
            dup
            bipush 14
        11: .line 832
            iconst_1
            bastore
        12: .line 817
            astore 1 /* bytecodes */
        start local 1 // byte[] bytecodes
        13: .line 833
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
            dup
            ldc "simpleSwitchProgram"
            aload 1 /* bytecodes */
            iconst_0
            iconst_3
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program.<init>:(Ljava/lang/String;[BII)V
            astore 2 /* program */
        start local 2 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program program
        14: .line 834
            aload 0 /* this */
            aload 2 /* program */
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
        15: .line 835
            return
        end local 2 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program program
        end local 1 // byte[] bytecodes
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0       this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
           13   16     1  bytecodes  [B
           14   16     2    program  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest$Program;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void loopSwitchProgram();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
         0: .line 840
            bipush 12
            newarray 8
            dup
            iconst_1
         1: .line 842
            iconst_1
            bastore
            dup
            iconst_2
         2: .line 843
            bipush 7
            bastore
            dup
            iconst_3
         3: .line 844
            iconst_2
            bastore
            dup
            iconst_5
         4: .line 846
            bipush 9
            bastore
            dup
            bipush 7
         5: .line 848
            bipush 40
            bastore
            dup
            bipush 8
         6: .line 849
            iconst_1
            bastore
            dup
            bipush 10
         7: .line 851
            bipush 42
            bastore
            dup
            bipush 11
         8: .line 852
            iconst_1
            bastore
         9: .line 840
            astore 1 /* bytecodes */
        start local 1 // byte[] bytecodes
        10: .line 853
            new org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
            dup
            ldc "loopSwitchProgram"
            aload 1 /* bytecodes */
            iconst_0
            iconst_3
            invokespecial org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program.<init>:(Ljava/lang/String;[BII)V
            astore 2 /* program */
        start local 2 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program program
        11: .line 854
            aload 0 /* this */
            aload 2 /* program */
            invokevirtual org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest.assertPartialEvalEqualsAndRunsCorrect:(Lcom/oracle/truffle/api/nodes/RootNode;)V
        12: .line 855
            return
        end local 2 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program program
        end local 1 // byte[] bytecodes
        end local 0 // org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     0       this  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest;
           10   13     1  bytecodes  [B
           11   13     2    program  Lorg/graalvm/compiler/truffle/test/BytecodeInterpreterPartialEvaluationTest$Program;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  private static int lambda$0(java.util.Map$Entry, java.util.Map$Entry);
    descriptor: (Ljava/util/Map$Entry;Ljava/util/Map$Entry;)I
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.Map$Entry o1
        start local 1 // java.util.Map$Entry o2
         0: .line 612
            aload 1 /* o2 */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.Long
            aload 0 /* o1 */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.Long
            invokevirtual java.lang.Long.compareTo:(Ljava/lang/Long;)I
            ireturn
        end local 1 // java.util.Map$Entry o2
        end local 0 // java.util.Map$Entry o1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    o1  Ljava/util/Map$Entry<Lorg/graalvm/compiler/debug/MetricKey;Ljava/lang/Long;>;
            0    1     1    o2  Ljava/util/Map$Entry<Lorg/graalvm/compiler/debug/MetricKey;Ljava/lang/Long;>;
}
SourceFile: "BytecodeInterpreterPartialEvaluationTest.java"
NestMembers:
  org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Bytecode  org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst  org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$Const  org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$IfLt  org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$IfZero  org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$Return  org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$InstArrayProgram  org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program
InnerClasses:
  public abstract TruffleBoundary = com.oracle.truffle.api.CompilerDirectives$TruffleBoundary of com.oracle.truffle.api.CompilerDirectives
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Entry = java.util.Map$Entry of java.util.Map
  public Bytecode = org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Bytecode of org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest
  public abstract Inst = org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst of org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest
  public Const = org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$Const of org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst
  public IfZero = org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$IfZero of org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst
  public Return = org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst$Return of org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Inst
  public InstArrayProgram = org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$InstArrayProgram of org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest
  public Program = org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest$Program of org.graalvm.compiler.truffle.test.BytecodeInterpreterPartialEvaluationTest