public final class com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints
  super_class: java.lang.Object
{
  private static final sun.misc.Unsafe UNSAFE;
    descriptor: Lsun/misc/Unsafe;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static final com.oracle.svm.core.c.CGlobalData<org.graalvm.word.Pointer> LOG_FILE_BARRIER;
    descriptor: Lcom/oracle/svm/core/c/CGlobalData;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Lcom/oracle/svm/core/c/CGlobalData<Lorg/graalvm/word/Pointer;>;

  static final com.oracle.svm.core.c.CGlobalData<org.graalvm.word.Pointer> MANAGEMENT_BARRIER;
    descriptor: Lcom/oracle/svm/core/c/CGlobalData;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Lcom/oracle/svm/core/c/CGlobalData<Lorg/graalvm/word/Pointer;>;

  private static final java.lang.ThreadLocal<com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints$CachedOptions> cachedOptions;
    descriptor: Ljava/lang/ThreadLocal;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/lang/ThreadLocal<Lcom/oracle/svm/graal/hotspot/libgraal/LibGraalEntryPoints$CachedOptions;>;

  private static boolean hasLibGraalIsolatePeer;
    descriptor: Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 79
            invokestatic org.graalvm.compiler.serviceprovider.GraalUnsafeAccess.getUnsafe:()Lsun/misc/Unsafe;
            putstatic com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints.UNSAFE:Lsun/misc/Unsafe;
         1: .line 84
            invokestatic org.graalvm.word.WordFactory.zero:()Lorg/graalvm/word/WordBase;
            checkcast org.graalvm.word.Pointer
            invokestatic com.oracle.svm.core.c.CGlobalDataFactory.createWord:(Lorg/graalvm/word/WordBase;)Lcom/oracle/svm/core/c/CGlobalData;
            putstatic com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints.LOG_FILE_BARRIER:Lcom/oracle/svm/core/c/CGlobalData;
         2: .line 90
            invokestatic org.graalvm.word.WordFactory.zero:()Lorg/graalvm/word/WordBase;
            checkcast org.graalvm.word.Pointer
            invokestatic com.oracle.svm.core.c.CGlobalDataFactory.createWord:(Lorg/graalvm/word/WordBase;)Lcom/oracle/svm/core/c/CGlobalData;
            putstatic com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints.MANAGEMENT_BARRIER:Lcom/oracle/svm/core/c/CGlobalData;
         3: .line 111
            new java.lang.ThreadLocal
            dup
            invokespecial java.lang.ThreadLocal.<init>:()V
            putstatic com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints.cachedOptions:Ljava/lang/ThreadLocal;
         4: .line 121
            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 // com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints this
         0: .line 77
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/graal/hotspot/libgraal/LibGraalEntryPoints;

  private static native org.graalvm.nativeimage.IsolateThread getIsolateThreadIn(org.graalvm.word.PointerBase, org.graalvm.word.PointerBase, org.graalvm.nativeimage.Isolate);
    descriptor: (Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/PointerBase;Lorg/graalvm/nativeimage/Isolate;)Lorg/graalvm/nativeimage/IsolateThread;
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(builtin = org.graalvm.nativeimage.c.function.CEntryPoint$Builtin.GET_CURRENT_THREAD:Lorg/graalvm/nativeimage/c/function/CEntryPoint$Builtin;, name = "Java_org_graalvm_libgraal_LibGraalScope_getIsolateThreadIn")
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.graalvm.nativeimage.c.function.CEntryPoint$IsolateContext()
    MethodParameters:
         Name  Flags
      env      
      hsClazz  
      isolate  

  static native long attachThreadTo(org.graalvm.word.PointerBase, org.graalvm.word.PointerBase, long);
    descriptor: (Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/PointerBase;J)J
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "Java_org_graalvm_libgraal_LibGraalScope_attachThreadTo", builtin = org.graalvm.nativeimage.c.function.CEntryPoint$Builtin.ATTACH_THREAD:Lorg/graalvm/nativeimage/c/function/CEntryPoint$Builtin;)
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.graalvm.nativeimage.c.function.CEntryPoint$IsolateContext()
    MethodParameters:
         Name  Flags
      env      
      hsClazz  
      isolate  

  static native void detachThreadFrom(org.graalvm.word.PointerBase, org.graalvm.word.PointerBase, long);
    descriptor: (Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/PointerBase;J)V
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "Java_org_graalvm_libgraal_LibGraalScope_detachThreadFrom", builtin = org.graalvm.nativeimage.c.function.CEntryPoint$Builtin.DETACH_THREAD:Lorg/graalvm/nativeimage/c/function/CEntryPoint$Builtin;)
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.graalvm.nativeimage.c.function.CEntryPoint$IsolateThreadContext()
    MethodParameters:
               Name  Flags
      env            
      hsClazz        
      isolateThread  

  public static boolean hasLibGraalIsolatePeer();
    descriptor: ()Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 114
            getstatic com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints.hasLibGraalIsolatePeer:Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static org.graalvm.compiler.options.OptionValues decodeOptions(long, int, int);
    descriptor: (JII)Lorg/graalvm/compiler/options/OptionValues;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=14, args_size=3
        start local 0 // long address
        start local 2 // int size
        start local 3 // int hash
         0: .line 124
            getstatic com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints.cachedOptions:Ljava/lang/ThreadLocal;
            invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
            checkcast com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints$CachedOptions
            astore 4 /* options */
        start local 4 // com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints$CachedOptions options
         1: .line 125
            aload 4 /* options */
            ifnull 2
            aload 4 /* options */
            getfield com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints$CachedOptions.hash:J
            iload 3 /* hash */
            i2l
            lcmp
            ifeq 18
         2: .line 126
      StackMap locals: com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints$CachedOptions
      StackMap stack:
            iload 2 /* size */
            newarray 8
            astore 5 /* buffer */
        start local 5 // byte[] buffer
         3: .line 127
            getstatic com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints.UNSAFE:Lsun/misc/Unsafe;
            aconst_null
            lload 0 /* address */
            aload 5 /* buffer */
            getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
            i2l
            iload 2 /* size */
            i2l
            invokevirtual sun.misc.Unsafe.copyMemory:(Ljava/lang/Object;JLjava/lang/Object;JJ)V
         4: .line 128
            aload 5 /* buffer */
            invokestatic java.util.Arrays.hashCode:([B)I
            istore 6 /* actualHash */
        start local 6 // int actualHash
         5: .line 129
            iload 6 /* actualHash */
            iload 3 /* hash */
            if_icmpeq 7
         6: .line 130
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            iload 6 /* actualHash */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " != "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 3 /* hash */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 132
      StackMap locals: byte[] int
      StackMap stack:
            aload 5 /* buffer */
            invokestatic org.graalvm.util.OptionsEncoder.decode:([B)Ljava/util/Map;
            astore 7 /* srcMap */
        start local 7 // java.util.Map srcMap
         8: .line 133
            invokestatic org.graalvm.compiler.options.OptionValues.newOptionMap:()Lorg/graalvm/collections/EconomicMap;
            astore 8 /* dstMap */
        start local 8 // org.graalvm.collections.EconomicMap dstMap
         9: .line 134
            invokestatic org.graalvm.compiler.options.OptionsParser.getOptionsLoader:()Ljava/lang/Iterable;
            astore 9 /* loader */
        start local 9 // java.lang.Iterable loader
        10: .line 135
            aload 7 /* srcMap */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 11
            goto 15
      StackMap locals: long int int com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints$CachedOptions byte[] int java.util.Map org.graalvm.collections.EconomicMap java.lang.Iterable top java.util.Iterator
      StackMap stack:
        11: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 10 /* e */
        start local 10 // java.util.Map$Entry e
        12: .line 136
            aload 10 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 12 /* optionName */
        start local 12 // java.lang.String optionName
        13: .line 137
            aload 10 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            astore 13 /* optionValue */
        start local 13 // java.lang.Object optionValue
        14: .line 138
            aload 12 /* optionName */
            aload 13 /* optionValue */
            aload 8 /* dstMap */
            aload 9 /* loader */
            invokestatic org.graalvm.compiler.options.OptionsParser.parseOption:(Ljava/lang/String;Ljava/lang/Object;Lorg/graalvm/collections/EconomicMap;Ljava/lang/Iterable;)V
        end local 13 // java.lang.Object optionValue
        end local 12 // java.lang.String optionName
        end local 10 // java.util.Map$Entry e
        15: .line 135
      StackMap locals:
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        16: .line 141
            new com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints$CachedOptions
            dup
            new org.graalvm.compiler.options.OptionValues
            dup
            aload 8 /* dstMap */
            invokespecial org.graalvm.compiler.options.OptionValues.<init>:(Lorg/graalvm/collections/UnmodifiableEconomicMap;)V
            iload 3 /* hash */
            i2l
            invokespecial com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints$CachedOptions.<init>:(Lorg/graalvm/compiler/options/OptionValues;J)V
            astore 4 /* options */
        17: .line 142
            getstatic com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints.cachedOptions:Ljava/lang/ThreadLocal;
            aload 4 /* options */
            invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
        end local 9 // java.lang.Iterable loader
        end local 8 // org.graalvm.collections.EconomicMap dstMap
        end local 7 // java.util.Map srcMap
        end local 6 // int actualHash
        end local 5 // byte[] buffer
        18: .line 144
      StackMap locals: long int int com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints$CachedOptions
      StackMap stack:
            aload 4 /* options */
            getfield com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints$CachedOptions.options:Lorg/graalvm/compiler/options/OptionValues;
            areturn
        end local 4 // com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints$CachedOptions options
        end local 3 // int hash
        end local 2 // int size
        end local 0 // long address
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   19     0      address  J
            0   19     2         size  I
            0   19     3         hash  I
            1   19     4      options  Lcom/oracle/svm/graal/hotspot/libgraal/LibGraalEntryPoints$CachedOptions;
            3   18     5       buffer  [B
            5   18     6   actualHash  I
            8   18     7       srcMap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
            9   18     8       dstMap  Lorg/graalvm/collections/EconomicMap<Lorg/graalvm/compiler/options/OptionKey<*>;Ljava/lang/Object;>;
           10   18     9       loader  Ljava/lang/Iterable<Lorg/graalvm/compiler/options/OptionDescriptors;>;
           12   15    10            e  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;
           13   15    12   optionName  Ljava/lang/String;
           14   15    13  optionValue  Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      address  
      size     
      hash     

  public static boolean releaseHandle(org.graalvm.word.PointerBase, org.graalvm.word.PointerBase, long, long);
    descriptor: (Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/PointerBase;JJ)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // org.graalvm.word.PointerBase jniEnv
        start local 1 // org.graalvm.word.PointerBase jclass
        start local 2 // long isolateThreadId
        start local 4 // long handle
         0: .line 154
            invokestatic org.graalvm.nativeimage.ObjectHandles.getGlobal:()Lorg/graalvm/nativeimage/ObjectHandles;
            lload 4 /* handle */
            invokestatic org.graalvm.word.WordFactory.pointer:(J)Lorg/graalvm/word/PointerBase;
            checkcast org.graalvm.nativeimage.ObjectHandle
            invokeinterface org.graalvm.nativeimage.ObjectHandles.destroy:(Lorg/graalvm/nativeimage/ObjectHandle;)V
         1: .line 155
            iconst_1
            ireturn
         2: .line 156
      StackMap locals:
      StackMap stack: java.lang.Throwable
            pop
         3: .line 157
            iconst_0
            ireturn
        end local 4 // long handle
        end local 2 // long isolateThreadId
        end local 1 // org.graalvm.word.PointerBase jclass
        end local 0 // org.graalvm.word.PointerBase jniEnv
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0           jniEnv  Lorg/graalvm/word/PointerBase;
            0    4     1           jclass  Lorg/graalvm/word/PointerBase;
            0    4     2  isolateThreadId  J
            0    4     4           handle  J
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "Java_org_graalvm_libgraal_LibGraalObject_releaseHandle")
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.graalvm.nativeimage.c.function.CEntryPoint$IsolateThreadContext()
      3:
    MethodParameters:
                 Name  Flags
      jniEnv           
      jclass           
      isolateThreadId  
      handle           

  public static long getIsolateId(org.graalvm.word.PointerBase, org.graalvm.word.PointerBase, long);
    descriptor: (Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/PointerBase;J)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.graalvm.word.PointerBase jniEnv
        start local 1 // org.graalvm.word.PointerBase jclass
        start local 2 // long isolateThreadId
         0: .line 167
            iconst_1
            putstatic com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints.hasLibGraalIsolatePeer:Z
         1: .line 168
            invokestatic org.graalvm.compiler.serviceprovider.IsolateUtil.getIsolateID:()J
         2: lreturn
         3: .line 169
      StackMap locals:
      StackMap stack: java.lang.Throwable
            pop
         4: .line 170
            lconst_0
            lreturn
        end local 2 // long isolateThreadId
        end local 1 // org.graalvm.word.PointerBase jclass
        end local 0 // org.graalvm.word.PointerBase jniEnv
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0           jniEnv  Lorg/graalvm/word/PointerBase;
            0    5     1           jclass  Lorg/graalvm/word/PointerBase;
            0    5     2  isolateThreadId  J
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "Java_org_graalvm_libgraal_LibGraalScope_getIsolateId")
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.graalvm.nativeimage.c.function.CEntryPoint$IsolateThreadContext()
    MethodParameters:
                 Name  Flags
      jniEnv           
      jclass           
      isolateThreadId  

  private static long compileMethod(org.graalvm.word.PointerBase, org.graalvm.word.PointerBase, long, long, boolean, boolean, boolean, long, int, int, long, int);
    descriptor: (Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/PointerBase;JJZZZJIIJI)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=28, args_size=12
        start local 0 // org.graalvm.word.PointerBase jniEnv
        start local 1 // org.graalvm.word.PointerBase jclass
        start local 2 // long isolateThread
        start local 4 // long methodHandle
        start local 6 // boolean useProfilingInfo
        start local 7 // boolean installAsDefault
        start local 8 // boolean printMetrics
        start local 9 // long optionsAddress
        start local 11 // int optionsSize
        start local 12 // int optionsHash
        start local 13 // long stackTraceAddress
        start local 15 // int stackTraceCapacity
         0: .line 220
            invokestatic jdk.vm.ci.hotspot.HotSpotJVMCIRuntime.runtime:()Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
            astore 16 /* runtime */
        start local 16 // jdk.vm.ci.hotspot.HotSpotJVMCIRuntime runtime
         1: .line 221
            ldc Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;
            lload 4 /* methodHandle */
            invokestatic org.graalvm.libgraal.LibGraal.unhand:(Ljava/lang/Class;J)Ljava/lang/Object;
            checkcast jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod
            astore 17 /* method */
        start local 17 // jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod method
         2: .line 223
            iconst_m1
            istore 18 /* entryBCI */
        start local 18 // int entryBCI
         3: .line 224
            new jdk.vm.ci.hotspot.HotSpotCompilationRequest
            dup
            aload 17 /* method */
            iload 18 /* entryBCI */
            lconst_0
            invokespecial jdk.vm.ci.hotspot.HotSpotCompilationRequest.<init>:(Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;IJ)V
            astore 19 /* request */
        start local 19 // jdk.vm.ci.hotspot.HotSpotCompilationRequest request
         4: .line 225
            aload 16 /* runtime */
            invokevirtual jdk.vm.ci.hotspot.HotSpotJVMCIRuntime.getCompiler:()Ljdk/vm/ci/runtime/JVMCICompiler;
            checkcast org.graalvm.compiler.hotspot.HotSpotGraalCompiler
            astore 20 /* compiler */
        start local 20 // org.graalvm.compiler.hotspot.HotSpotGraalCompiler compiler
         5: .line 226
            aconst_null
            astore 21
            aconst_null
            astore 22
         6: aload 19 /* request */
            invokestatic org.graalvm.compiler.hotspot.HotSpotGraalServices.openLocalCompilationContext:(Ljava/lang/Object;)Lorg/graalvm/compiler/hotspot/CompilationContext;
            astore 23 /* scope */
        start local 23 // org.graalvm.compiler.hotspot.CompilationContext scope
         7: .line 228
            lload 9 /* optionsAddress */
            iload 11 /* optionsSize */
            iload 12 /* optionsHash */
            invokestatic com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints.decodeOptions:(JII)Lorg/graalvm/compiler/options/OptionValues;
            astore 24 /* options */
        start local 24 // org.graalvm.compiler.options.OptionValues options
         8: .line 229
            new org.graalvm.compiler.hotspot.CompilationTask
            dup
            aload 16 /* runtime */
            aload 20 /* compiler */
            aload 19 /* request */
            iload 6 /* useProfilingInfo */
            iload 7 /* installAsDefault */
            invokespecial org.graalvm.compiler.hotspot.CompilationTask.<init>:(Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;Lorg/graalvm/compiler/hotspot/HotSpotGraalCompiler;Ljdk/vm/ci/hotspot/HotSpotCompilationRequest;ZZ)V
            astore 25 /* task */
        start local 25 // org.graalvm.compiler.hotspot.CompilationTask task
         9: .line 230
            aload 25 /* task */
            aload 24 /* options */
            invokevirtual org.graalvm.compiler.hotspot.CompilationTask.runCompilation:(Lorg/graalvm/compiler/options/OptionValues;)Ljdk/vm/ci/hotspot/HotSpotCompilationRequestResult;
            pop
        10: .line 231
            aload 25 /* task */
            invokevirtual org.graalvm.compiler.hotspot.CompilationTask.getInstalledCode:()Ljdk/vm/ci/hotspot/HotSpotInstalledCode;
            astore 26 /* installedCode */
        start local 26 // jdk.vm.ci.hotspot.HotSpotInstalledCode installedCode
        11: .line 233
            iload 8 /* printMetrics */
            ifeq 15
        12: .line 234
            aload 20 /* compiler */
            invokevirtual org.graalvm.compiler.hotspot.HotSpotGraalCompiler.getGraalRuntime:()Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            checkcast org.graalvm.compiler.hotspot.HotSpotGraalRuntime
            invokevirtual org.graalvm.compiler.hotspot.HotSpotGraalRuntime.getMetricValues:()Lorg/graalvm/compiler/debug/GlobalMetrics;
            astore 27 /* metricValues */
        start local 27 // org.graalvm.compiler.debug.GlobalMetrics metricValues
        13: .line 235
            aload 27 /* metricValues */
            aload 24 /* options */
            invokevirtual org.graalvm.compiler.debug.GlobalMetrics.print:(Lorg/graalvm/compiler/options/OptionValues;)V
        14: .line 236
            aload 27 /* metricValues */
            invokevirtual org.graalvm.compiler.debug.GlobalMetrics.clear:()V
        end local 27 // org.graalvm.compiler.debug.GlobalMetrics metricValues
        15: .line 238
      StackMap locals: org.graalvm.word.PointerBase org.graalvm.word.PointerBase long long int int int long int int long int jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod int jdk.vm.ci.hotspot.HotSpotCompilationRequest org.graalvm.compiler.hotspot.HotSpotGraalCompiler java.lang.Throwable java.lang.Throwable org.graalvm.compiler.hotspot.CompilationContext org.graalvm.compiler.options.OptionValues org.graalvm.compiler.hotspot.CompilationTask jdk.vm.ci.hotspot.HotSpotInstalledCode
      StackMap stack:
            aload 26 /* installedCode */
            invokestatic org.graalvm.libgraal.LibGraal.translate:(Ljava/lang/Object;)J
        16: .line 239
            aload 23 /* scope */
            ifnull 17
            aload 23 /* scope */
            invokevirtual org.graalvm.compiler.hotspot.CompilationContext.close:()V
        17: .line 238
      StackMap locals:
      StackMap stack: long
            lreturn
        end local 26 // jdk.vm.ci.hotspot.HotSpotInstalledCode installedCode
        end local 25 // org.graalvm.compiler.hotspot.CompilationTask task
        end local 24 // org.graalvm.compiler.options.OptionValues options
      StackMap locals: org.graalvm.word.PointerBase org.graalvm.word.PointerBase long long int int int long int int long int jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod int jdk.vm.ci.hotspot.HotSpotCompilationRequest org.graalvm.compiler.hotspot.HotSpotGraalCompiler java.lang.Throwable java.lang.Throwable org.graalvm.compiler.hotspot.CompilationContext
      StackMap stack: java.lang.Throwable
        18: astore 21
        19: .line 239
            aload 23 /* scope */
            ifnull 20
            aload 23 /* scope */
            invokevirtual org.graalvm.compiler.hotspot.CompilationContext.close:()V
        end local 23 // org.graalvm.compiler.hotspot.CompilationContext scope
      StackMap locals:
      StackMap stack:
        20: aload 21
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        21: astore 22
            aload 21
            ifnonnull 22
            aload 22
            astore 21
            goto 23
      StackMap locals:
      StackMap stack:
        22: aload 21
            aload 22
            if_acmpeq 23
            aload 21
            aload 22
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        23: aload 21
            athrow
        end local 20 // org.graalvm.compiler.hotspot.HotSpotGraalCompiler compiler
        end local 19 // jdk.vm.ci.hotspot.HotSpotCompilationRequest request
        end local 18 // int entryBCI
        end local 17 // jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod method
        end local 16 // jdk.vm.ci.hotspot.HotSpotJVMCIRuntime runtime
        24: .line 240
      StackMap locals: org.graalvm.word.PointerBase org.graalvm.word.PointerBase long long int int int long int int long int
      StackMap stack: java.lang.Throwable
            astore 16 /* t */
        start local 16 // java.lang.Throwable t
        25: .line 241
            new java.io.ByteArrayOutputStream
            dup
            invokespecial java.io.ByteArrayOutputStream.<init>:()V
            astore 17 /* baos */
        start local 17 // java.io.ByteArrayOutputStream baos
        26: .line 242
            aload 16 /* t */
            new java.io.PrintStream
            dup
            aload 17 /* baos */
            invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintStream;)V
        27: .line 243
            aload 17 /* baos */
            invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
            astore 18 /* stackTrace */
        start local 18 // byte[] stackTrace
        28: .line 244
            iload 15 /* stackTraceCapacity */
            iconst_4
            isub
            aload 18 /* stackTrace */
            arraylength
            invokestatic java.lang.Math.min:(II)I
            istore 19 /* length */
        start local 19 // int length
        29: .line 245
            getstatic com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints.UNSAFE:Lsun/misc/Unsafe;
            lload 13 /* stackTraceAddress */
            iload 19 /* length */
            invokevirtual sun.misc.Unsafe.putInt:(JI)V
        30: .line 246
            getstatic com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints.UNSAFE:Lsun/misc/Unsafe;
            aload 18 /* stackTrace */
            getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
            i2l
            aconst_null
            lload 13 /* stackTraceAddress */
            ldc 4
            ladd
            iload 19 /* length */
            i2l
            invokevirtual sun.misc.Unsafe.copyMemory:(Ljava/lang/Object;JLjava/lang/Object;JJ)V
        31: .line 247
            lconst_0
            lreturn
        end local 19 // int length
        end local 18 // byte[] stackTrace
        end local 17 // java.io.ByteArrayOutputStream baos
        end local 16 // java.lang.Throwable t
        end local 15 // int stackTraceCapacity
        end local 13 // long stackTraceAddress
        end local 12 // int optionsHash
        end local 11 // int optionsSize
        end local 9 // long optionsAddress
        end local 8 // boolean printMetrics
        end local 7 // boolean installAsDefault
        end local 6 // boolean useProfilingInfo
        end local 4 // long methodHandle
        end local 2 // long isolateThread
        end local 1 // org.graalvm.word.PointerBase jclass
        end local 0 // org.graalvm.word.PointerBase jniEnv
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   32     0              jniEnv  Lorg/graalvm/word/PointerBase;
            0   32     1              jclass  Lorg/graalvm/word/PointerBase;
            0   32     2       isolateThread  J
            0   32     4        methodHandle  J
            0   32     6    useProfilingInfo  Z
            0   32     7    installAsDefault  Z
            0   32     8        printMetrics  Z
            0   32     9      optionsAddress  J
            0   32    11         optionsSize  I
            0   32    12         optionsHash  I
            0   32    13   stackTraceAddress  J
            0   32    15  stackTraceCapacity  I
            1   24    16             runtime  Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
            2   24    17              method  Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;
            3   24    18            entryBCI  I
            4   24    19             request  Ljdk/vm/ci/hotspot/HotSpotCompilationRequest;
            5   24    20            compiler  Lorg/graalvm/compiler/hotspot/HotSpotGraalCompiler;
            7   20    23               scope  Lorg/graalvm/compiler/hotspot/CompilationContext;
            8   18    24             options  Lorg/graalvm/compiler/options/OptionValues;
            9   18    25                task  Lorg/graalvm/compiler/hotspot/CompilationTask;
           11   18    26       installedCode  Ljdk/vm/ci/hotspot/HotSpotInstalledCode;
           13   15    27        metricValues  Lorg/graalvm/compiler/debug/GlobalMetrics;
           25   32    16                   t  Ljava/lang/Throwable;
           26   32    17                baos  Ljava/io/ByteArrayOutputStream;
           28   32    18          stackTrace  [B
           29   32    19              length  I
      Exception table:
        from    to  target  type
           7    16      18  any
           6    17      21  any
          18    21      21  any
           0    17      24  Class java.lang.Throwable
          18    24      24  Class java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "Java_org_graalvm_compiler_hotspot_test_CompileTheWorld_compileMethodInLibgraal")
      com.oracle.svm.core.c.function.CEntryPointOptions(include = Lcom/oracle/svm/graal/hotspot/libgraal/LibGraalFeature$IsEnabled;)
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.graalvm.nativeimage.c.function.CEntryPoint$IsolateThreadContext()
      3:
      4:
      5:
      6:
      7:
      8:
      9:
      10:
      11:
    MethodParameters:
                    Name  Flags
      jniEnv              
      jclass              
      isolateThread       
      methodHandle        
      useProfilingInfo    
      installAsDefault    
      printMetrics        
      optionsAddress      
      optionsSize         
      optionsHash         
      stackTraceAddress   
      stackTraceCapacity  
}
SourceFile: "LibGraalEntryPoints.java"
NestMembers:
  com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints$CachedOptions
InnerClasses:
  CachedOptions = com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints$CachedOptions of com.oracle.svm.graal.hotspot.libgraal.LibGraalEntryPoints
  public abstract Entry = java.util.Map$Entry of java.util.Map
  public final Builtin = org.graalvm.nativeimage.c.function.CEntryPoint$Builtin of org.graalvm.nativeimage.c.function.CEntryPoint
  public abstract IsolateContext = org.graalvm.nativeimage.c.function.CEntryPoint$IsolateContext of org.graalvm.nativeimage.c.function.CEntryPoint
  public abstract IsolateThreadContext = org.graalvm.nativeimage.c.function.CEntryPoint$IsolateThreadContext of org.graalvm.nativeimage.c.function.CEntryPoint