public class org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest extends com.oracle.truffle.api.test.polyglot.AbstractPolyglotTest
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest
  super_class: com.oracle.truffle.api.test.polyglot.AbstractPolyglotTest
{
  private volatile boolean rewriting;
    descriptor: Z
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest this
         0: .line 61
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.test.polyglot.AbstractPolyglotTest.<init>:()V
         1: .line 204
            aload 0 /* this */
            iconst_0
            putfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest.rewriting:Z
         2: .line 61
            return
        end local 0 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest;

  public void testRootCompilation();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest this
         0: .line 193
            new org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode
            dup
            invokespecial org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode.<init>:()V
            astore 1 /* detectInvalidCodeNode */
        start local 1 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode detectInvalidCodeNode
         1: .line 194
            aload 0 /* this */
            aload 1 /* detectInvalidCodeNode */
            aconst_null
            aload 1 /* detectInvalidCodeNode */
            sipush 1000
            bipush 20
            invokevirtual org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest.testCompilation:(Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$BaseNode;Lcom/oracle/truffle/api/nodes/LoopNode;Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$DetectInvalidCodeNode;II)V
         2: .line 195
            return
        end local 1 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode detectInvalidCodeNode
        end local 0 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    3     0                   this  Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest;
            1    3     1  detectInvalidCodeNode  Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$DetectInvalidCodeNode;
    Exceptions:
      throws java.io.IOException, java.lang.InterruptedException, java.util.concurrent.ExecutionException
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testLoopCompilation();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest this
         0: .line 199
            new org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode
            dup
            invokespecial org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode.<init>:()V
            astore 1 /* detectInvalidCodeNode */
        start local 1 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode detectInvalidCodeNode
         1: .line 200
            new org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode
            dup
            ldc 10000000
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 1 /* detectInvalidCodeNode */
            invokespecial org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode.<init>:(Ljava/lang/Object;Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$BaseNode;)V
            astore 2 /* testedCode */
        start local 2 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode testedCode
         2: .line 201
            aload 0 /* this */
            aload 2 /* testedCode */
            aload 2 /* testedCode */
            getfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode.loop:Lcom/oracle/truffle/api/nodes/LoopNode;
            aload 1 /* detectInvalidCodeNode */
            sipush 1000
            bipush 40
            invokevirtual org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest.testCompilation:(Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$BaseNode;Lcom/oracle/truffle/api/nodes/LoopNode;Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$DetectInvalidCodeNode;II)V
         3: .line 202
            return
        end local 2 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode testedCode
        end local 1 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode detectInvalidCodeNode
        end local 0 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    4     0                   this  Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest;
            1    4     1  detectInvalidCodeNode  Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$DetectInvalidCodeNode;
            2    4     2             testedCode  Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$WhileLoopNode;
    Exceptions:
      throws java.io.IOException, java.lang.InterruptedException, java.util.concurrent.ExecutionException
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  private void testCompilation(org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$BaseNode, com.oracle.truffle.api.nodes.LoopNode, org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode, int, int);
    descriptor: (Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$BaseNode;Lcom/oracle/truffle/api/nodes/LoopNode;Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$DetectInvalidCodeNode;II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=15, args_size=6
        start local 0 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest this
        start local 1 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$BaseNode testedCode
        start local 2 // com.oracle.truffle.api.nodes.LoopNode loopNode
        start local 3 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode nodeToRewrite
        start local 4 // int rewriteCount
        start local 5 // int maxDelayBeforeRewrite
         0: .line 208
            aload 0 /* this */
            iconst_0
            anewarray java.lang.String
            invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
            new org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$1
            dup
            aload 0 /* this */
            aload 1 /* testedCode */
            invokespecial org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$1.<init>:(Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest;Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$BaseNode;)V
            invokevirtual org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest.setupEnv:(Lorg/graalvm/polyglot/Context;Lcom/oracle/truffle/api/test/polyglot/ProxyLanguage;)V
         1: .line 235
            new java.util.concurrent.atomic.AtomicReference
            dup
            aload 3 /* nodeToRewrite */
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:(Ljava/lang/Object;)V
            astore 6 /* nodeToRewriteReference */
        start local 6 // java.util.concurrent.atomic.AtomicReference nodeToRewriteReference
         2: .line 236
            new java.util.Random
            dup
            invokespecial java.util.Random.<init>:()V
            astore 7 /* rnd */
        start local 7 // java.util.Random rnd
         3: .line 237
            new java.util.concurrent.CountDownLatch
            dup
            iconst_1
            invokespecial java.util.concurrent.CountDownLatch.<init>:(I)V
            astore 8 /* nodeRewritingLatch */
        start local 8 // java.util.concurrent.CountDownLatch nodeRewritingLatch
         4: .line 238
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* callTargetsToCheck */
        start local 9 // java.util.List callTargetsToCheck
         5: .line 239
            aload 0 /* this */
            iconst_1
            putfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest.rewriting:Z
         6: .line 240
            iconst_1
            invokestatic java.util.concurrent.Executors.newFixedThreadPool:(I)Ljava/util/concurrent/ExecutorService;
            astore 10 /* executor */
        start local 10 // java.util.concurrent.ExecutorService executor
         7: .line 241
            aload 10 /* executor */
            aload 0 /* this */
            iload 4 /* rewriteCount */
            aload 7 /* rnd */
            iload 5 /* maxDelayBeforeRewrite */
            aload 8 /* nodeRewritingLatch */
            aload 2 /* loopNode */
            aload 9 /* callTargetsToCheck */
            aload 6 /* nodeToRewriteReference */
            invokedynamic run(Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest;ILjava/util/Random;ILjava/util/concurrent/CountDownLatch;Lcom/oracle/truffle/api/nodes/LoopNode;Ljava/util/List;Ljava/util/concurrent/atomic/AtomicReference;)Ljava/lang/Runnable;
              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:
                  ()V
                  org/graalvm/compiler/truffle/test/RewriteDuringCompilationTest.lambda$0(ILjava/util/Random;ILjava/util/concurrent/CountDownLatch;Lcom/oracle/truffle/api/nodes/LoopNode;Ljava/util/List;Ljava/util/concurrent/atomic/AtomicReference;)V (7)
                  ()V
            invokeinterface java.util.concurrent.ExecutorService.submit:(Ljava/lang/Runnable;)Ljava/util/concurrent/Future;
            astore 11 /* future */
        start local 11 // java.util.concurrent.Future future
         8: .line 265
            ldc "proxyLanguage"
            ldc ""
            ldc "DummySource"
            invokestatic org.graalvm.polyglot.Source.newBuilder:(Ljava/lang/String;Ljava/lang/CharSequence;Ljava/lang/String;)Lorg/graalvm/polyglot/Source$Builder;
            invokevirtual org.graalvm.polyglot.Source$Builder.build:()Lorg/graalvm/polyglot/Source;
            astore 12 /* source */
        start local 12 // org.graalvm.polyglot.Source source
         9: .line 268
      StackMap locals: org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$BaseNode com.oracle.truffle.api.nodes.LoopNode org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode int int java.util.concurrent.atomic.AtomicReference java.util.Random java.util.concurrent.CountDownLatch java.util.List java.util.concurrent.ExecutorService java.util.concurrent.Future org.graalvm.polyglot.Source
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest.context:Lorg/graalvm/polyglot/Context;
            aload 12 /* source */
            invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
            pop
        10: .line 269
            aload 8 /* nodeRewritingLatch */
            invokevirtual java.util.concurrent.CountDownLatch.countDown:()V
        11: .line 270
            aload 0 /* this */
            getfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest.rewriting:Z
            ifne 9
        12: .line 274
            goto 19
      StackMap locals:
      StackMap stack: java.lang.Throwable
        13: astore 13
        14: .line 275
            aload 0 /* this */
            iconst_0
            putfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest.rewriting:Z
        15: .line 276
            aload 11 /* future */
            invokeinterface java.util.concurrent.Future.get:()Ljava/lang/Object;
            pop
        16: .line 277
            aload 10 /* executor */
            invokeinterface java.util.concurrent.ExecutorService.shutdownNow:()Ljava/util/List;
            pop
        17: .line 278
            aload 10 /* executor */
            ldc 100
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            invokeinterface java.util.concurrent.ExecutorService.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z
            pop
        18: .line 279
            aload 13
            athrow
        19: .line 275
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest.rewriting:Z
        20: .line 276
            aload 11 /* future */
            invokeinterface java.util.concurrent.Future.get:()Ljava/lang/Object;
            pop
        21: .line 277
            aload 10 /* executor */
            invokeinterface java.util.concurrent.ExecutorService.shutdownNow:()Ljava/util/List;
            pop
        22: .line 278
            aload 10 /* executor */
            ldc 100
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            invokeinterface java.util.concurrent.ExecutorService.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z
            pop
        23: .line 280
            aload 9 /* callTargetsToCheck */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 14
            goto 26
      StackMap locals: org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$BaseNode com.oracle.truffle.api.nodes.LoopNode org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode int int java.util.concurrent.atomic.AtomicReference java.util.Random java.util.concurrent.CountDownLatch java.util.List java.util.concurrent.ExecutorService java.util.concurrent.Future org.graalvm.polyglot.Source top java.util.Iterator
      StackMap stack:
        24: aload 14
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 13 /* callTarget */
        start local 13 // java.lang.Object callTarget
        25: .line 281
            ldc "Obsolete loop call target is still valid"
            aload 13 /* callTarget */
            checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
            invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.isValid:()Z
            invokestatic org.junit.Assert.assertFalse:(Ljava/lang/String;Z)V
        end local 13 // java.lang.Object callTarget
        26: .line 280
      StackMap locals:
      StackMap stack:
            aload 14
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 24
        27: .line 283
            return
        end local 12 // org.graalvm.polyglot.Source source
        end local 11 // java.util.concurrent.Future future
        end local 10 // java.util.concurrent.ExecutorService executor
        end local 9 // java.util.List callTargetsToCheck
        end local 8 // java.util.concurrent.CountDownLatch nodeRewritingLatch
        end local 7 // java.util.Random rnd
        end local 6 // java.util.concurrent.atomic.AtomicReference nodeToRewriteReference
        end local 5 // int maxDelayBeforeRewrite
        end local 4 // int rewriteCount
        end local 3 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode nodeToRewrite
        end local 2 // com.oracle.truffle.api.nodes.LoopNode loopNode
        end local 1 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$BaseNode testedCode
        end local 0 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   28     0                    this  Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest;
            0   28     1              testedCode  Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$BaseNode;
            0   28     2                loopNode  Lcom/oracle/truffle/api/nodes/LoopNode;
            0   28     3           nodeToRewrite  Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$DetectInvalidCodeNode;
            0   28     4            rewriteCount  I
            0   28     5   maxDelayBeforeRewrite  I
            2   28     6  nodeToRewriteReference  Ljava/util/concurrent/atomic/AtomicReference<Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$DetectInvalidCodeNode;>;
            3   28     7                     rnd  Ljava/util/Random;
            4   28     8      nodeRewritingLatch  Ljava/util/concurrent/CountDownLatch;
            5   28     9      callTargetsToCheck  Ljava/util/List<Ljava/lang/Object;>;
            7   28    10                executor  Ljava/util/concurrent/ExecutorService;
            8   28    11                  future  Ljava/util/concurrent/Future<*>;
            9   28    12                  source  Lorg/graalvm/polyglot/Source;
           25   26    13              callTarget  Ljava/lang/Object;
      Exception table:
        from    to  target  type
           9    13      13  any
    Exceptions:
      throws java.io.IOException, java.lang.InterruptedException, java.util.concurrent.ExecutionException
    MethodParameters:
                       Name  Flags
      testedCode             
      loopNode               
      nodeToRewrite          
      rewriteCount           
      maxDelayBeforeRewrite  

  private void lambda$0(int, java.util.Random, int, java.util.concurrent.CountDownLatch, com.oracle.truffle.api.nodes.LoopNode, java.util.List, java.util.concurrent.atomic.AtomicReference);
    descriptor: (ILjava/util/Random;ILjava/util/concurrent/CountDownLatch;Lcom/oracle/truffle/api/nodes/LoopNode;Ljava/util/List;Ljava/util/concurrent/atomic/AtomicReference;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=12, args_size=8
        start local 0 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest this
         0: .line 243
            iconst_1
            istore 8 /* i */
        start local 8 // int i
         1: goto 16
         2: .line 245
      StackMap locals: int
      StackMap stack:
            aload 2
            iload 3
            invokevirtual java.util.Random.nextInt:(I)I
            i2l
            invokestatic java.lang.Thread.sleep:(J)V
         3: .line 246
            aload 4
            invokevirtual java.util.concurrent.CountDownLatch.await:()V
         4: .line 247
            goto 6
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
         5: pop
         6: .line 249
      StackMap locals:
      StackMap stack:
            aload 5
            ifnull 10
         7: .line 250
            aload 5
            checkcast org.graalvm.compiler.truffle.runtime.OptimizedOSRLoopNode
            invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedOSRLoopNode.getCompiledOSRLoop:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
            astore 9 /* loopNodeCallTarget */
        start local 9 // java.lang.Object loopNodeCallTarget
         8: .line 251
            aload 9 /* loopNodeCallTarget */
            ifnull 10
         9: .line 252
            aload 6
            aload 9 /* loopNodeCallTarget */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // java.lang.Object loopNodeCallTarget
        10: .line 255
      StackMap locals:
      StackMap stack:
            aload 7
            invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode
            astore 9 /* previousNode */
        start local 9 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode previousNode
        11: .line 256
            new org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode
            dup
            invokespecial org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode.<init>:()V
            astore 10 /* newNode */
        start local 10 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode newNode
        12: .line 257
            aload 7
            aload 10 /* newNode */
            invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
        13: .line 258
            aload 9 /* previousNode */
            aload 10 /* newNode */
            invokevirtual org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode.replace:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
            pop
        14: .line 259
            aload 9 /* previousNode */
            iconst_0
            putfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode.valid:Z
        end local 10 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode newNode
        end local 9 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode previousNode
        15: .line 243
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 8 /* i */
            iload 1
            if_icmpgt 21
            aload 0 /* this */
            getfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest.rewriting:Z
            ifne 2
        end local 8 // int i
        17: .line 261
            goto 21
      StackMap locals: org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest int java.util.Random int java.util.concurrent.CountDownLatch com.oracle.truffle.api.nodes.LoopNode java.util.List java.util.concurrent.atomic.AtomicReference
      StackMap stack: java.lang.Throwable
        18: astore 11
        19: .line 262
            aload 0 /* this */
            iconst_0
            putfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest.rewriting:Z
        20: .line 263
            aload 11
            athrow
        21: .line 262
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest.rewriting:Z
        22: .line 264
            return
        end local 0 // org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   23     0                this  Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest;
            1   17     8                   i  I
            8   10     9  loopNodeCallTarget  Ljava/lang/Object;
           11   15     9        previousNode  Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$DetectInvalidCodeNode;
           12   15    10             newNode  Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$DetectInvalidCodeNode;
      Exception table:
        from    to  target  type
           2     4       5  Class java.lang.InterruptedException
           0    18      18  any
}
SourceFile: "RewriteDuringCompilationTest.java"
NestMembers:
  org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$1  org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$1$1  org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$BaseNode  org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode  org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode  org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$1
  abstract BaseNode = org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$BaseNode of org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest
  final DetectInvalidCodeNode = org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$DetectInvalidCodeNode of org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest
  final WhileLoopNode = org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode of org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest
  public Builder = org.graalvm.polyglot.Source$Builder of org.graalvm.polyglot.Source