class org.graalvm.compiler.truffle.test.CodeInvalidationTest$1 extends com.oracle.truffle.api.test.polyglot.ProxyLanguage
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.graalvm.compiler.truffle.test.CodeInvalidationTest$1
  super_class: com.oracle.truffle.api.test.polyglot.ProxyLanguage
{
  private com.oracle.truffle.api.CallTarget target;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0002) ACC_PRIVATE

  final org.graalvm.compiler.truffle.test.CodeInvalidationTest this$0;
    descriptor: Lorg/graalvm/compiler/truffle/test/CodeInvalidationTest;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private final org.graalvm.compiler.truffle.test.CodeInvalidationTest$WhileLoopNode val$testedCode;
    descriptor: Lorg/graalvm/compiler/truffle/test/CodeInvalidationTest$WhileLoopNode;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  void <init>(org.graalvm.compiler.truffle.test.CodeInvalidationTest, org.graalvm.compiler.truffle.test.CodeInvalidationTest$WhileLoopNode);
    descriptor: (Lorg/graalvm/compiler/truffle/test/CodeInvalidationTest;Lorg/graalvm/compiler/truffle/test/CodeInvalidationTest$WhileLoopNode;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.truffle.test.CodeInvalidationTest$1 this
         0: .line 240
            aload 0 /* this */
            aload 1
            putfield org.graalvm.compiler.truffle.test.CodeInvalidationTest$1.this$0:Lorg/graalvm/compiler/truffle/test/CodeInvalidationTest;
            aload 0 /* this */
            aload 2
            putfield org.graalvm.compiler.truffle.test.CodeInvalidationTest$1.val$testedCode:Lorg/graalvm/compiler/truffle/test/CodeInvalidationTest$WhileLoopNode;
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.test.polyglot.ProxyLanguage.<init>:()V
            return
        end local 0 // org.graalvm.compiler.truffle.test.CodeInvalidationTest$1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/truffle/test/CodeInvalidationTest$1;
    MethodParameters:
                Name  Flags
      this$0          final
      val$testedCode  final

  protected synchronized com.oracle.truffle.api.CallTarget parse(com.oracle.truffle.api.TruffleLanguage$ParsingRequest);
    descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$ParsingRequest;)Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0024) ACC_PROTECTED, ACC_SYNCHRONIZED
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.truffle.test.CodeInvalidationTest$1 this
        start local 1 // com.oracle.truffle.api.TruffleLanguage$ParsingRequest request
         0: .line 251
            aload 1 /* request */
            invokevirtual com.oracle.truffle.api.TruffleLanguage$ParsingRequest.getSource:()Lcom/oracle/truffle/api/source/Source;
            astore 2 /* source */
        start local 2 // com.oracle.truffle.api.source.Source source
         1: .line 252
            aload 0 /* this */
            getfield org.graalvm.compiler.truffle.test.CodeInvalidationTest$1.target:Lcom/oracle/truffle/api/CallTarget;
            ifnonnull 3
         2: .line 253
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            new org.graalvm.compiler.truffle.test.CodeInvalidationTest$1$1
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield org.graalvm.compiler.truffle.test.CodeInvalidationTest$1.languageInstance:Lcom/oracle/truffle/api/test/polyglot/ProxyLanguage;
            aload 0 /* this */
            getfield org.graalvm.compiler.truffle.test.CodeInvalidationTest$1.val$testedCode:Lorg/graalvm/compiler/truffle/test/CodeInvalidationTest$WhileLoopNode;
            aload 2 /* source */
            invokespecial org.graalvm.compiler.truffle.test.CodeInvalidationTest$1$1.<init>:(Lorg/graalvm/compiler/truffle/test/CodeInvalidationTest$1;Lcom/oracle/truffle/api/TruffleLanguage;Lorg/graalvm/compiler/truffle/test/CodeInvalidationTest$WhileLoopNode;Lcom/oracle/truffle/api/source/Source;)V
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
            putfield org.graalvm.compiler.truffle.test.CodeInvalidationTest$1.target:Lcom/oracle/truffle/api/CallTarget;
         3: .line 269
      StackMap locals: com.oracle.truffle.api.source.Source
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.truffle.test.CodeInvalidationTest$1.target:Lcom/oracle/truffle/api/CallTarget;
            areturn
        end local 2 // com.oracle.truffle.api.source.Source source
        end local 1 // com.oracle.truffle.api.TruffleLanguage$ParsingRequest request
        end local 0 // org.graalvm.compiler.truffle.test.CodeInvalidationTest$1 this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/graalvm/compiler/truffle/test/CodeInvalidationTest$1;
            0    4     1  request  Lcom/oracle/truffle/api/TruffleLanguage$ParsingRequest;
            1    4     2   source  Lcom/oracle/truffle/api/source/Source;
    MethodParameters:
         Name  Flags
      request  

  protected boolean isThreadAccessAllowed(java.lang.Thread, boolean);
    descriptor: (Ljava/lang/Thread;Z)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.truffle.test.CodeInvalidationTest$1 this
        start local 1 // java.lang.Thread thread
        start local 2 // boolean singleThreaded
         0: .line 274
            iconst_1
            ireturn
        end local 2 // boolean singleThreaded
        end local 1 // java.lang.Thread thread
        end local 0 // org.graalvm.compiler.truffle.test.CodeInvalidationTest$1 this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lorg/graalvm/compiler/truffle/test/CodeInvalidationTest$1;
            0    1     1          thread  Ljava/lang/Thread;
            0    1     2  singleThreaded  Z
    MethodParameters:
                Name  Flags
      thread          
      singleThreaded  
}
SourceFile: "CodeInvalidationTest.java"
EnclosingMethod: org.graalvm.compiler.truffle.test.CodeInvalidationTest.testInvalidation:()V
NestHost: org.graalvm.compiler.truffle.test.CodeInvalidationTest
InnerClasses:
  public final ParsingRequest = com.oracle.truffle.api.TruffleLanguage$ParsingRequest of com.oracle.truffle.api.TruffleLanguage
  org.graalvm.compiler.truffle.test.CodeInvalidationTest$1
  org.graalvm.compiler.truffle.test.CodeInvalidationTest$1$1
  final WhileLoopNode = org.graalvm.compiler.truffle.test.CodeInvalidationTest$WhileLoopNode of org.graalvm.compiler.truffle.test.CodeInvalidationTest