public class com.oracle.truffle.llvm.runtime.LLVMLanguage extends com.oracle.truffle.api.TruffleLanguage<com.oracle.truffle.llvm.runtime.LLVMContext>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.llvm.runtime.LLVMLanguage
super_class: com.oracle.truffle.api.TruffleLanguage
{
static final java.lang.String LLVM_BITCODE_MIME_TYPE;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "application/x-llvm-ir-bitcode"
static final java.lang.String LLVM_BITCODE_EXTENSION;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "bc"
static final java.lang.String LLVM_ELF_SHARED_MIME_TYPE;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "application/x-sharedlib"
static final java.lang.String LLVM_ELF_EXEC_MIME_TYPE;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "application/x-executable"
static final java.lang.String LLVM_ELF_LINUX_EXTENSION;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "so"
static final java.lang.String LLVM_MACHO_MIME_TYPE;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "application/x-mach-binary"
static final java.lang.String MAIN_ARGS_KEY;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "Sulong Main Args"
static final java.lang.String PARSE_ONLY_KEY;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "Parse only"
public static final java.lang.String ID;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "llvm"
static final java.lang.String NAME;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "LLVM"
private final java.util.concurrent.atomic.AtomicInteger nextID;
descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public final com.oracle.truffle.api.Assumption singleContextAssumption;
descriptor: Lcom/oracle/truffle/api/Assumption;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
private com.oracle.truffle.llvm.runtime.config.Configuration activeConfiguration;
descriptor: Lcom/oracle/truffle/llvm/runtime/config/Configuration;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$CompilationFinal()
private com.oracle.truffle.llvm.runtime.LLVMLanguage$ContextExtensionKey<?>[] contextExtensions;
descriptor: [Lcom/oracle/truffle/llvm/runtime/LLVMLanguage$ContextExtensionKey;
flags: (0x0002) ACC_PRIVATE
Signature: [Lcom/oracle/truffle/llvm/runtime/LLVMLanguage$ContextExtensionKey<*>;
private com.oracle.truffle.llvm.runtime.memory.LLVMMemory cachedLLVMMemory;
descriptor: Lcom/oracle/truffle/llvm/runtime/memory/LLVMMemory;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$CompilationFinal()
private final org.graalvm.collections.EconomicMap<java.lang.String, com.oracle.truffle.llvm.runtime.LLVMScope> internalFileScopes;
descriptor: Lorg/graalvm/collections/EconomicMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/graalvm/collections/EconomicMap<Ljava/lang/String;Lcom/oracle/truffle/llvm/runtime/LLVMScope;>;
private final org.graalvm.collections.EconomicMap<java.lang.String, com.oracle.truffle.api.CallTarget> libraryCache;
descriptor: Lorg/graalvm/collections/EconomicMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/graalvm/collections/EconomicMap<Ljava/lang/String;Lcom/oracle/truffle/api/CallTarget;>;
private final java.lang.Object libraryCacheLock;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.graalvm.collections.EconomicMap<java.lang.String, com.oracle.truffle.api.source.Source> librarySources;
descriptor: Lorg/graalvm/collections/EconomicMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/graalvm/collections/EconomicMap<Ljava/lang/String;Lcom/oracle/truffle/api/source/Source;>;
private final com.oracle.truffle.llvm.runtime.debug.LLDBSupport lldbSupport;
descriptor: Lcom/oracle/truffle/llvm/runtime/debug/LLDBSupport;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.oracle.truffle.api.Assumption noCommonHandleAssumption;
descriptor: Lcom/oracle/truffle/api/Assumption;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.oracle.truffle.api.Assumption noDerefHandleAssumption;
descriptor: Lcom/oracle/truffle/api/Assumption;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.oracle.truffle.llvm.runtime.interop.access.LLVMInteropType$InteropTypeRegistry interopTypeRegistry;
descriptor: Lcom/oracle/truffle/llvm/runtime/interop/access/LLVMInteropType$InteropTypeRegistry;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private com.oracle.truffle.llvm.runtime.LLVMFunctionCode sulongInitContextCode;
descriptor: Lcom/oracle/truffle/llvm/runtime/LLVMFunctionCode;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$CompilationFinal()
private com.oracle.truffle.llvm.runtime.LLVMFunction sulongDisposeContext;
descriptor: Lcom/oracle/truffle/llvm/runtime/LLVMFunction;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$CompilationFinal()
private com.oracle.truffle.llvm.runtime.LLVMFunctionCode startFunctionCode;
descriptor: Lcom/oracle/truffle/llvm/runtime/LLVMFunctionCode;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$CompilationFinal()
private com.oracle.truffle.api.CallTarget freeGlobalBlocks;
descriptor: Lcom/oracle/truffle/api/CallTarget;
flags: (0x0002) ACC_PRIVATE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic com.oracle.truffle.llvm.runtime.LLVMLanguage.$assertionsDisabled:Z
3: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.oracle.truffle.api.TruffleLanguage.<init>:()V
1: aload 0
new java.util.concurrent.atomic.AtomicInteger
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:(I)V
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.nextID:Ljava/util/concurrent/atomic/AtomicInteger;
2: aload 0
invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
ldc "Only a single context is active"
invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.singleContextAssumption:Lcom/oracle/truffle/api/Assumption;
3: aload 0
aconst_null
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.activeConfiguration:Lcom/oracle/truffle/llvm/runtime/config/Configuration;
4: aload 0
invokestatic org.graalvm.collections.EconomicMap.create:()Lorg/graalvm/collections/EconomicMap;
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.internalFileScopes:Lorg/graalvm/collections/EconomicMap;
5: aload 0
invokestatic org.graalvm.collections.EconomicMap.create:()Lorg/graalvm/collections/EconomicMap;
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.libraryCache:Lorg/graalvm/collections/EconomicMap;
6: aload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.libraryCacheLock:Ljava/lang/Object;
7: aload 0
invokestatic org.graalvm.collections.EconomicMap.create:()Lorg/graalvm/collections/EconomicMap;
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.librarySources:Lorg/graalvm/collections/EconomicMap;
8: aload 0
new com.oracle.truffle.llvm.runtime.debug.LLDBSupport
dup
aload 0
invokespecial com.oracle.truffle.llvm.runtime.debug.LLDBSupport.<init>:(Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;)V
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.lldbSupport:Lcom/oracle/truffle/llvm/runtime/debug/LLDBSupport;
9: aload 0
invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
ldc "no common handle"
invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.noCommonHandleAssumption:Lcom/oracle/truffle/api/Assumption;
10: aload 0
invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
ldc "no deref handle"
invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.noDerefHandleAssumption:Lcom/oracle/truffle/api/Assumption;
11: aload 0
new com.oracle.truffle.llvm.runtime.interop.access.LLVMInteropType$InteropTypeRegistry
dup
invokespecial com.oracle.truffle.llvm.runtime.interop.access.LLVMInteropType$InteropTypeRegistry.<init>:()V
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.interopTypeRegistry:Lcom/oracle/truffle/llvm/runtime/interop/access/LLVMInteropType$InteropTypeRegistry;
12: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.noCommonHandleAssumption:Lcom/oracle/truffle/api/Assumption;
invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
pop
13: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
protected void initializeContext(com.oracle.truffle.llvm.runtime.LLVMContext);
descriptor: (Lcom/oracle/truffle/llvm/runtime/LLVMContext;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.contextExtensions:[Lcom/oracle/truffle/llvm/runtime/LLVMLanguage$ContextExtensionKey;
arraylength
anewarray com.oracle.truffle.llvm.runtime.ContextExtension
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 7
3: StackMap locals: com.oracle.truffle.llvm.runtime.ContextExtension[] int
StackMap stack:
aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.contextExtensions:[Lcom/oracle/truffle/llvm/runtime/LLVMLanguage$ContextExtensionKey;
iload 3
aaload
astore 4
start local 4 4: aload 4
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage$ContextExtensionKey.factory:Lcom/oracle/truffle/llvm/runtime/ContextExtension$Factory;
aload 1
invokevirtual com.oracle.truffle.llvm.runtime.LLVMContext.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
invokeinterface com.oracle.truffle.llvm.runtime.ContextExtension$Factory.create:(Lcom/oracle/truffle/api/TruffleLanguage$Env;)Lcom/oracle/truffle/llvm/runtime/ContextExtension;
astore 5
start local 5 5: aload 2
iload 3
aload 4
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage$ContextExtensionKey.clazz:Ljava/lang/Class;
aload 5
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.llvm.runtime.ContextExtension
aastore
end local 5 end local 4 6: iinc 3 1
StackMap locals:
StackMap stack:
7: iload 3
aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.contextExtensions:[Lcom/oracle/truffle/llvm/runtime/LLVMLanguage$ContextExtensionKey;
arraylength
if_icmplt 3
end local 3 8: aload 1
aload 2
invokevirtual com.oracle.truffle.llvm.runtime.LLVMContext.initialize:([Lcom/oracle/truffle/llvm/runtime/ContextExtension;)V
9: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 10 1 context Lcom/oracle/truffle/llvm/runtime/LLVMContext;
1 10 2 ctxExts [Lcom/oracle/truffle/llvm/runtime/ContextExtension;
2 8 3 i I
4 6 4 key Lcom/oracle/truffle/llvm/runtime/LLVMLanguage$ContextExtensionKey<*>;
5 6 5 ext Lcom/oracle/truffle/llvm/runtime/ContextExtension;
MethodParameters:
Name Flags
context
public static com.oracle.truffle.llvm.runtime.LLVMContext getContext();
descriptor: ()Lcom/oracle/truffle/llvm/runtime/LLVMContext;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc "Use faster context lookup methods for the fast-path."
invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:(Ljava/lang/String;)V
1: ldc Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
invokestatic com.oracle.truffle.llvm.runtime.LLVMLanguage.getCurrentContext:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.oracle.truffle.llvm.runtime.LLVMContext
areturn
LocalVariableTable:
Start End Slot Name Signature
public static com.oracle.truffle.llvm.runtime.LLVMLanguage getLanguage();
descriptor: ()Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
invokestatic com.oracle.truffle.llvm.runtime.LLVMLanguage.getCurrentLanguage:(Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage;
checkcast com.oracle.truffle.llvm.runtime.LLVMLanguage
areturn
LocalVariableTable:
Start End Slot Name Signature
public static com.oracle.truffle.llvm.runtime.debug.LLDBSupport getLLDBSupport();
descriptor: ()Lcom/oracle/truffle/llvm/runtime/debug/LLDBSupport;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic com.oracle.truffle.llvm.runtime.LLVMLanguage.getLanguage:()Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.lldbSupport:Lcom/oracle/truffle/llvm/runtime/debug/LLDBSupport;
areturn
LocalVariableTable:
Start End Slot Name Signature
public <C extends com.oracle.truffle.llvm.runtime.config.LLVMCapability> C getCapability(java.lang.Class<C>);
descriptor: (Ljava/lang/Class;)Lcom/oracle/truffle/llvm/runtime/config/LLVMCapability;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.api.CompilerAsserts.partialEvaluationConstant:(Ljava/lang/Object;)V
1: aload 1
ldc Lcom/oracle/truffle/llvm/runtime/memory/LLVMMemory;
if_acmpne 3
2: aload 1
aload 0
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage.getLLVMMemory:()Lcom/oracle/truffle/llvm/runtime/memory/LLVMMemory;
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.llvm.runtime.config.LLVMCapability
areturn
3: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.activeConfiguration:Lcom/oracle/truffle/llvm/runtime/config/Configuration;
aload 1
invokeinterface com.oracle.truffle.llvm.runtime.config.Configuration.getCapability:(Ljava/lang/Class;)Lcom/oracle/truffle/llvm/runtime/config/LLVMCapability;
astore 2
start local 2 4: aload 0
invokestatic com.oracle.truffle.api.CompilerDirectives.isPartialEvaluationConstant:(Ljava/lang/Object;)Z
ifeq 6
5: aload 2
invokestatic com.oracle.truffle.api.CompilerAsserts.partialEvaluationConstant:(Ljava/lang/Object;)V
6: StackMap locals: com.oracle.truffle.llvm.runtime.config.LLVMCapability
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 7 1 type Ljava/lang/Class<TC;>;
4 7 2 ret TC;
Signature: <C::Lcom/oracle/truffle/llvm/runtime/config/LLVMCapability;>(Ljava/lang/Class<TC;>;)TC;
MethodParameters:
Name Flags
type
public com.oracle.truffle.api.Assumption getNoCommonHandleAssumption();
descriptor: ()Lcom/oracle/truffle/api/Assumption;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.noCommonHandleAssumption:Lcom/oracle/truffle/api/Assumption;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
public com.oracle.truffle.api.Assumption getNoDerefHandleAssumption();
descriptor: ()Lcom/oracle/truffle/api/Assumption;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.noDerefHandleAssumption:Lcom/oracle/truffle/api/Assumption;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
public final java.lang.String getLLVMLanguageHome();
descriptor: ()Ljava/lang/String;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage.getLanguageHome:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
public com.oracle.truffle.llvm.runtime.config.Configuration getActiveConfiguration();
descriptor: ()Lcom/oracle/truffle/llvm/runtime/config/Configuration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.activeConfiguration:Lcom/oracle/truffle/llvm/runtime/config/Configuration;
ifnull 2
1: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.activeConfiguration:Lcom/oracle/truffle/llvm/runtime/config/Configuration;
areturn
2: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "No context, please create the context before accessing the configuration."
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
public com.oracle.truffle.llvm.runtime.memory.LLVMMemory getLLVMMemory();
descriptor: ()Lcom/oracle/truffle/llvm/runtime/memory/LLVMMemory;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic com.oracle.truffle.llvm.runtime.LLVMLanguage.$assertionsDisabled:Z
ifne 1
aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.cachedLLVMMemory:Lcom/oracle/truffle/llvm/runtime/memory/LLVMMemory;
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.cachedLLVMMemory:Lcom/oracle/truffle/llvm/runtime/memory/LLVMMemory;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
public com.oracle.truffle.llvm.runtime.LLVMScope getInternalFileScopes(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/oracle/truffle/llvm/runtime/LLVMScope;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.internalFileScopes:Lorg/graalvm/collections/EconomicMap;
aload 1
invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.llvm.runtime.LLVMScope
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 1 1 libraryName Ljava/lang/String;
MethodParameters:
Name Flags
libraryName
public void addInternalFileScope(java.lang.String, com.oracle.truffle.llvm.runtime.LLVMScope);
descriptor: (Ljava/lang/String;Lcom/oracle/truffle/llvm/runtime/LLVMScope;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.internalFileScopes:Lorg/graalvm/collections/EconomicMap;
aload 1
aload 2
invokeinterface org.graalvm.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 2 1 libraryName Ljava/lang/String;
0 2 2 scope Lcom/oracle/truffle/llvm/runtime/LLVMScope;
MethodParameters:
Name Flags
libraryName
scope
public com.oracle.truffle.api.source.Source getLibrarySource(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/oracle/truffle/api/source/Source;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.librarySources:Lorg/graalvm/collections/EconomicMap;
aload 1
invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.api.source.Source
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 1 1 path Ljava/lang/String;
MethodParameters:
Name Flags
path
public void addLibrarySource(java.lang.String, com.oracle.truffle.api.source.Source);
descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/source/Source;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.librarySources:Lorg/graalvm/collections/EconomicMap;
aload 1
aload 2
invokeinterface org.graalvm.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 2 1 path Ljava/lang/String;
0 2 2 source Lcom/oracle/truffle/api/source/Source;
MethodParameters:
Name Flags
path
source
public boolean containsLibrarySource(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.librarySources:Lorg/graalvm/collections/EconomicMap;
aload 1
invokeinterface org.graalvm.collections.EconomicMap.containsKey:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 1 1 path Ljava/lang/String;
MethodParameters:
Name Flags
path
protected com.oracle.truffle.llvm.runtime.LLVMContext createContext(com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$Env;)Lcom/oracle/truffle/llvm/runtime/LLVMContext;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.activeConfiguration:Lcom/oracle/truffle/llvm/runtime/config/Configuration;
ifnonnull 6
1: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 2: new com.oracle.truffle.llvm.runtime.LLVMLanguage$1
dup
aload 0
aload 2
invokespecial com.oracle.truffle.llvm.runtime.LLVMLanguage$1.<init>:(Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;Ljava/util/ArrayList;)V
astore 3
start local 3 3: aload 0
aload 0
aload 3
aload 1
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getOptions:()Lorg/graalvm/options/OptionValues;
invokestatic com.oracle.truffle.llvm.runtime.config.Configurations.createConfiguration:(Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;Lcom/oracle/truffle/llvm/runtime/ContextExtension$Registry;Lorg/graalvm/options/OptionValues;)Lcom/oracle/truffle/llvm/runtime/config/Configuration;
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.activeConfiguration:Lcom/oracle/truffle/llvm/runtime/config/Configuration;
4: aload 0
aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.activeConfiguration:Lcom/oracle/truffle/llvm/runtime/config/Configuration;
ldc Lcom/oracle/truffle/llvm/runtime/memory/LLVMMemory;
invokeinterface com.oracle.truffle.llvm.runtime.config.Configuration.getCapability:(Ljava/lang/Class;)Lcom/oracle/truffle/llvm/runtime/config/LLVMCapability;
checkcast com.oracle.truffle.llvm.runtime.memory.LLVMMemory
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.cachedLLVMMemory:Lcom/oracle/truffle/llvm/runtime/memory/LLVMMemory;
5: aload 0
aload 2
getstatic com.oracle.truffle.llvm.runtime.LLVMLanguage$ContextExtensionKey.EMPTY:[Lcom/oracle/truffle/llvm/runtime/LLVMLanguage$ContextExtensionKey;
invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast com.oracle.truffle.llvm.runtime.LLVMLanguage$ContextExtensionKey[]
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.contextExtensions:[Lcom/oracle/truffle/llvm/runtime/LLVMLanguage$ContextExtensionKey;
end local 3 end local 2 6: StackMap locals:
StackMap stack:
new com.oracle.truffle.llvm.runtime.ToolchainImpl
dup
aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.activeConfiguration:Lcom/oracle/truffle/llvm/runtime/config/Configuration;
ldc Lcom/oracle/truffle/llvm/runtime/ToolchainConfig;
invokeinterface com.oracle.truffle.llvm.runtime.config.Configuration.getCapability:(Ljava/lang/Class;)Lcom/oracle/truffle/llvm/runtime/config/LLVMCapability;
checkcast com.oracle.truffle.llvm.runtime.ToolchainConfig
aload 0
invokespecial com.oracle.truffle.llvm.runtime.ToolchainImpl.<init>:(Lcom/oracle/truffle/llvm/runtime/ToolchainConfig;Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;)V
astore 2
start local 2 7: aload 1
aload 2
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.registerService:(Ljava/lang/Object;)V
8: new com.oracle.truffle.llvm.runtime.LLVMContext
dup
aload 0
aload 1
aload 2
invokespecial com.oracle.truffle.llvm.runtime.LLVMContext.<init>:(Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;Lcom/oracle/truffle/api/TruffleLanguage$Env;Lcom/oracle/truffle/llvm/api/Toolchain;)V
astore 3
start local 3 9: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 10 1 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
2 6 2 ctxExts Ljava/util/ArrayList<Lcom/oracle/truffle/llvm/runtime/ContextExtension$Key<*>;>;
3 6 3 r Lcom/oracle/truffle/llvm/runtime/ContextExtension$Registry;
7 10 2 toolchain Lcom/oracle/truffle/llvm/api/Toolchain;
9 10 3 context Lcom/oracle/truffle/llvm/runtime/LLVMContext;
MethodParameters:
Name Flags
env
public <C extends com.oracle.truffle.llvm.runtime.ContextExtension> com.oracle.truffle.llvm.runtime.ContextExtension$Key<C> lookupContextExtension(java.lang.Class<C>);
descriptor: (Ljava/lang/Class;)Lcom/oracle/truffle/llvm/runtime/ContextExtension$Key;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:()V
1: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.contextExtensions:[Lcom/oracle/truffle/llvm/runtime/LLVMLanguage$ContextExtensionKey;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 6
StackMap locals: com.oracle.truffle.llvm.runtime.LLVMLanguage java.lang.Class top int int com.oracle.truffle.llvm.runtime.LLVMLanguage$ContextExtensionKey[]
StackMap stack:
2: aload 5
iload 3
aaload
astore 2
start local 2 3: aload 1
aload 2
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage$ContextExtensionKey.clazz:Ljava/lang/Class;
if_acmpne 5
4: aload 2
aload 1
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage$ContextExtensionKey.cast:(Ljava/lang/Class;)Lcom/oracle/truffle/llvm/runtime/LLVMLanguage$ContextExtensionKey;
areturn
end local 2 5: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
6: iload 3
iload 4
if_icmplt 2
7: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 8 1 type Ljava/lang/Class<TC;>;
3 5 2 key Lcom/oracle/truffle/llvm/runtime/LLVMLanguage$ContextExtensionKey<*>;
Signature: <C::Lcom/oracle/truffle/llvm/runtime/ContextExtension;>(Ljava/lang/Class<TC;>;)Lcom/oracle/truffle/llvm/runtime/ContextExtension$Key<TC;>;
MethodParameters:
Name Flags
type
protected com.oracle.truffle.api.nodes.ExecutableNode parse(com.oracle.truffle.api.TruffleLanguage$InlineParsingRequest);
descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$InlineParsingRequest;)Lcom/oracle/truffle/api/nodes/ExecutableNode;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=6, args_size=2
start local 0 start local 1 0: aload 0
ldc Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
invokestatic com.oracle.truffle.llvm.runtime.LLVMLanguage.getCurrentContext:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.oracle.truffle.llvm.runtime.LLVMContext
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage.getScope:(Lcom/oracle/truffle/llvm/runtime/LLVMContext;)Ljava/lang/Object;
astore 2
start local 2 1: new com.oracle.truffle.llvm.runtime.debug.debugexpr.parser.antlr.DebugExprParser
dup
aload 1
aload 2
ldc Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
invokestatic com.oracle.truffle.llvm.runtime.LLVMLanguage.getCurrentContext:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.oracle.truffle.llvm.runtime.LLVMContext
invokespecial com.oracle.truffle.llvm.runtime.debug.debugexpr.parser.antlr.DebugExprParser.<init>:(Lcom/oracle/truffle/api/TruffleLanguage$InlineParsingRequest;Ljava/lang/Object;Lcom/oracle/truffle/llvm/runtime/LLVMContext;)V
astore 3
start local 3 2: new com.oracle.truffle.llvm.runtime.debug.debugexpr.nodes.DebugExprExecutableNode
dup
aload 3
invokevirtual com.oracle.truffle.llvm.runtime.debug.debugexpr.parser.antlr.DebugExprParser.parse:()Lcom/oracle/truffle/llvm/runtime/nodes/api/LLVMExpressionNode;
invokespecial com.oracle.truffle.llvm.runtime.debug.debugexpr.nodes.DebugExprExecutableNode.<init>:(Lcom/oracle/truffle/llvm/runtime/nodes/api/LLVMExpressionNode;)V
3: areturn
4: StackMap locals: com.oracle.truffle.llvm.runtime.LLVMLanguage com.oracle.truffle.api.TruffleLanguage$InlineParsingRequest java.lang.Object com.oracle.truffle.llvm.runtime.debug.debugexpr.parser.antlr.DebugExprParser
StackMap stack: java.lang.RuntimeException
astore 4
start local 4 5: aload 4
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
astore 5
start local 5 6: new com.oracle.truffle.llvm.runtime.LLVMLanguage$2
dup
aload 0
aload 0
aload 5
invokespecial com.oracle.truffle.llvm.runtime.LLVMLanguage$2.<init>:(Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;Lcom/oracle/truffle/api/TruffleLanguage;Ljava/lang/String;)V
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 7 1 request Lcom/oracle/truffle/api/TruffleLanguage$InlineParsingRequest;
1 7 2 globalScope Ljava/lang/Object;
2 7 3 d Lcom/oracle/truffle/llvm/runtime/debug/debugexpr/parser/antlr/DebugExprParser;
5 7 4 e Ljava/lang/RuntimeException;
6 7 5 errorMessage Ljava/lang/String;
Exception table:
from to target type
2 3 4 Class com.oracle.truffle.llvm.runtime.debug.debugexpr.parser.DebugExprException
2 3 4 Class com.oracle.truffle.llvm.runtime.except.LLVMParserException
MethodParameters:
Name Flags
request
protected boolean patchContext(com.oracle.truffle.llvm.runtime.LLVMContext, com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Lcom/oracle/truffle/llvm/runtime/LLVMContext;Lcom/oracle/truffle/api/TruffleLanguage$Env;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual com.oracle.truffle.llvm.runtime.LLVMContext.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getOptions:()Lorg/graalvm/options/OptionValues;
aload 2
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getOptions:()Lorg/graalvm/options/OptionValues;
invokestatic com.oracle.truffle.llvm.runtime.config.Configurations.areOptionsCompatible:(Lorg/graalvm/options/OptionValues;Lorg/graalvm/options/OptionValues;)Z
istore 3
start local 3 1: iload 3
ifne 3
2: iconst_0
ireturn
3: StackMap locals: int
StackMap stack:
aload 1
aload 2
invokevirtual com.oracle.truffle.llvm.runtime.LLVMContext.patchContext:(Lcom/oracle/truffle/api/TruffleLanguage$Env;)Z
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 4 1 context Lcom/oracle/truffle/llvm/runtime/LLVMContext;
0 4 2 newEnv Lcom/oracle/truffle/api/TruffleLanguage$Env;
1 4 3 compatible Z
MethodParameters:
Name Flags
context
newEnv
protected boolean areOptionsCompatible(org.graalvm.options.OptionValues, org.graalvm.options.OptionValues);
descriptor: (Lorg/graalvm/options/OptionValues;Lorg/graalvm/options/OptionValues;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokestatic com.oracle.truffle.llvm.runtime.config.Configurations.areOptionsCompatible:(Lorg/graalvm/options/OptionValues;Lorg/graalvm/options/OptionValues;)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 1 1 firstOptions Lorg/graalvm/options/OptionValues;
0 1 2 newOptions Lorg/graalvm/options/OptionValues;
MethodParameters:
Name Flags
firstOptions
newOptions
protected void finalizeContext(com.oracle.truffle.llvm.runtime.LLVMContext);
descriptor: (Lcom/oracle/truffle/llvm/runtime/LLVMContext;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.sulongDisposeContext:Lcom/oracle/truffle/llvm/runtime/LLVMFunction;
invokevirtual com.oracle.truffle.llvm.runtime.LLVMContext.finalizeContext:(Lcom/oracle/truffle/llvm/runtime/LLVMFunction;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 2 1 context Lcom/oracle/truffle/llvm/runtime/LLVMContext;
MethodParameters:
Name Flags
context
protected void disposeContext(com.oracle.truffle.llvm.runtime.LLVMContext);
descriptor: (Lcom/oracle/truffle/llvm/runtime/LLVMContext;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage.getLLVMMemory:()Lcom/oracle/truffle/llvm/runtime/memory/LLVMMemory;
astore 2
start local 2 1: aload 1
aload 2
invokevirtual com.oracle.truffle.llvm.runtime.LLVMContext.dispose:(Lcom/oracle/truffle/llvm/runtime/memory/LLVMMemory;)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 3 1 context Lcom/oracle/truffle/llvm/runtime/LLVMContext;
1 3 2 memory Lcom/oracle/truffle/llvm/runtime/memory/LLVMMemory;
MethodParameters:
Name Flags
context
public void setSulongInitContext(com.oracle.truffle.llvm.runtime.LLVMFunction);
descriptor: (Lcom/oracle/truffle/llvm/runtime/LLVMFunction;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
new com.oracle.truffle.llvm.runtime.LLVMFunctionCode
dup
aload 1
invokespecial com.oracle.truffle.llvm.runtime.LLVMFunctionCode.<init>:(Lcom/oracle/truffle/llvm/runtime/LLVMFunction;)V
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.sulongInitContextCode:Lcom/oracle/truffle/llvm/runtime/LLVMFunctionCode;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 2 1 function Lcom/oracle/truffle/llvm/runtime/LLVMFunction;
MethodParameters:
Name Flags
function
public void setSulongDisposeContext(com.oracle.truffle.llvm.runtime.LLVMFunction);
descriptor: (Lcom/oracle/truffle/llvm/runtime/LLVMFunction;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.sulongDisposeContext:Lcom/oracle/truffle/llvm/runtime/LLVMFunction;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 2 1 function Lcom/oracle/truffle/llvm/runtime/LLVMFunction;
MethodParameters:
Name Flags
function
public void setStartFunctionCode(com.oracle.truffle.llvm.runtime.LLVMFunctionCode);
descriptor: (Lcom/oracle/truffle/llvm/runtime/LLVMFunctionCode;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.startFunctionCode:Lcom/oracle/truffle/llvm/runtime/LLVMFunctionCode;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 2 1 startFunctionCode Lcom/oracle/truffle/llvm/runtime/LLVMFunctionCode;
MethodParameters:
Name Flags
startFunctionCode
public com.oracle.truffle.llvm.runtime.LLVMFunctionCode getStartFunctionCode();
descriptor: ()Lcom/oracle/truffle/llvm/runtime/LLVMFunctionCode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic com.oracle.truffle.llvm.runtime.LLVMLanguage.$assertionsDisabled:Z
ifne 1
aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.startFunctionCode:Lcom/oracle/truffle/llvm/runtime/LLVMFunctionCode;
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.startFunctionCode:Lcom/oracle/truffle/llvm/runtime/LLVMFunctionCode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
protected void initFreeGlobalBlocks(com.oracle.truffle.llvm.runtime.NodeFactory);
descriptor: (Lcom/oracle/truffle/llvm/runtime/NodeFactory;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.freeGlobalBlocks:Lcom/oracle/truffle/api/CallTarget;
ifnonnull 2
1: aload 0
invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
new com.oracle.truffle.llvm.runtime.LLVMLanguage$FreeGlobalsNode
dup
aload 0
aload 1
invokespecial com.oracle.truffle.llvm.runtime.LLVMLanguage$FreeGlobalsNode.<init>:(Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;Lcom/oracle/truffle/llvm/runtime/NodeFactory;)V
invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
putfield com.oracle.truffle.llvm.runtime.LLVMLanguage.freeGlobalBlocks:Lcom/oracle/truffle/api/CallTarget;
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 3 1 nodeFactory Lcom/oracle/truffle/llvm/runtime/NodeFactory;
MethodParameters:
Name Flags
nodeFactory
public com.oracle.truffle.api.CallTarget getFreeGlobalBlocks();
descriptor: ()Lcom/oracle/truffle/api/CallTarget;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.freeGlobalBlocks:Lcom/oracle/truffle/api/CallTarget;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
public java.util.concurrent.atomic.AtomicInteger getRawRunnerID();
descriptor: ()Ljava/util/concurrent/atomic/AtomicInteger;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.nextID:Ljava/util/concurrent/atomic/AtomicInteger;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
public com.oracle.truffle.llvm.runtime.interop.access.LLVMInteropType getInteropType(com.oracle.truffle.llvm.runtime.debug.type.LLVMSourceType);
descriptor: (Lcom/oracle/truffle/llvm/runtime/debug/type/LLVMSourceType;)Lcom/oracle/truffle/llvm/runtime/interop/access/LLVMInteropType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.interopTypeRegistry:Lcom/oracle/truffle/llvm/runtime/interop/access/LLVMInteropType$InteropTypeRegistry;
aload 1
invokevirtual com.oracle.truffle.llvm.runtime.interop.access.LLVMInteropType$InteropTypeRegistry.get:(Lcom/oracle/truffle/llvm/runtime/debug/type/LLVMSourceType;)Lcom/oracle/truffle/llvm/runtime/interop/access/LLVMInteropType;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 1 1 sourceType Lcom/oracle/truffle/llvm/runtime/debug/type/LLVMSourceType;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
sourceType
public com.oracle.truffle.llvm.runtime.nodes.api.LLVMStatementNode createInitializeContextNode();
descriptor: ()Lcom/oracle/truffle/llvm/runtime/nodes/api/LLVMStatementNode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tInitializeContextNodeGen cannot be resolved\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
protected 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: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.libraryCacheLock:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 1
invokevirtual com.oracle.truffle.api.TruffleLanguage$ParsingRequest.getSource:()Lcom/oracle/truffle/api/source/Source;
astore 3
start local 3 2: aload 3
invokevirtual com.oracle.truffle.api.source.Source.getPath:()Ljava/lang/String;
astore 4
start local 4 3: aload 3
invokevirtual com.oracle.truffle.api.source.Source.isCached:()Z
ifeq 12
4: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.libraryCache:Lorg/graalvm/collections/EconomicMap;
aload 4
invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.api.CallTarget
astore 5
start local 5 5: aload 5
ifnonnull 10
6: aload 0
ldc Lcom/oracle/truffle/llvm/runtime/LLVMLanguage$Loader;
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage.getCapability:(Ljava/lang/Class;)Lcom/oracle/truffle/llvm/runtime/config/LLVMCapability;
checkcast com.oracle.truffle.llvm.runtime.LLVMLanguage$Loader
invokestatic com.oracle.truffle.llvm.runtime.LLVMLanguage.getContext:()Lcom/oracle/truffle/llvm/runtime/LLVMContext;
aload 3
aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.nextID:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage$Loader.load:(Lcom/oracle/truffle/llvm/runtime/LLVMContext;Lcom/oracle/truffle/api/source/Source;Ljava/util/concurrent/atomic/AtomicInteger;)Lcom/oracle/truffle/api/CallTarget;
astore 5
7: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.libraryCache:Lorg/graalvm/collections/EconomicMap;
aload 4
aload 5
invokeinterface org.graalvm.collections.EconomicMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.api.CallTarget
astore 6
start local 6 8: aload 6
ifnull 10
9: aload 6
astore 5
end local 6 10: StackMap locals: com.oracle.truffle.llvm.runtime.LLVMLanguage com.oracle.truffle.api.TruffleLanguage$ParsingRequest java.lang.Object com.oracle.truffle.api.source.Source java.lang.String com.oracle.truffle.api.CallTarget
StackMap stack:
aload 5
aload 2
monitorexit
11: areturn
end local 5 12: StackMap locals:
StackMap stack:
aload 0
ldc Lcom/oracle/truffle/llvm/runtime/LLVMLanguage$Loader;
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage.getCapability:(Ljava/lang/Class;)Lcom/oracle/truffle/llvm/runtime/config/LLVMCapability;
checkcast com.oracle.truffle.llvm.runtime.LLVMLanguage$Loader
invokestatic com.oracle.truffle.llvm.runtime.LLVMLanguage.getContext:()Lcom/oracle/truffle/llvm/runtime/LLVMContext;
aload 3
aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.nextID:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage$Loader.load:(Lcom/oracle/truffle/llvm/runtime/LLVMContext;Lcom/oracle/truffle/api/source/Source;Ljava/util/concurrent/atomic/AtomicInteger;)Lcom/oracle/truffle/api/CallTarget;
aload 2
monitorexit
13: areturn
end local 4 end local 3 14: StackMap locals: com.oracle.truffle.llvm.runtime.LLVMLanguage com.oracle.truffle.api.TruffleLanguage$ParsingRequest java.lang.Object
StackMap stack: java.lang.Throwable
aload 2
monitorexit
15: athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 16 1 request Lcom/oracle/truffle/api/TruffleLanguage$ParsingRequest;
2 14 3 source Lcom/oracle/truffle/api/source/Source;
3 14 4 path Ljava/lang/String;
5 12 5 callTarget Lcom/oracle/truffle/api/CallTarget;
8 10 6 prev Lcom/oracle/truffle/api/CallTarget;
Exception table:
from to target type
1 11 14 any
12 13 14 any
14 15 14 any
MethodParameters:
Name Flags
request
public boolean isLibraryCached(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.libraryCacheLock:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.libraryCache:Lorg/graalvm/collections/EconomicMap;
aload 1
invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnull 2
iconst_1
goto 3
StackMap locals: java.lang.Object
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: aload 2
monitorexit
4: ireturn
5: StackMap locals:
StackMap stack: java.lang.Throwable
aload 2
monitorexit
6: athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 7 1 path Ljava/lang/String;
Exception table:
from to target type
1 4 5 any
5 6 5 any
MethodParameters:
Name Flags
path
public com.oracle.truffle.api.CallTarget getCachedLibrary(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/oracle/truffle/api/CallTarget;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.libraryCacheLock:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.libraryCache:Lorg/graalvm/collections/EconomicMap;
aload 1
invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.api.CallTarget
aload 2
monitorexit
2: areturn
3: StackMap locals: com.oracle.truffle.llvm.runtime.LLVMLanguage java.lang.String java.lang.Object
StackMap stack: java.lang.Throwable
aload 2
monitorexit
4: athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 5 1 path Ljava/lang/String;
Exception table:
from to target type
1 2 3 any
3 4 3 any
MethodParameters:
Name Flags
path
protected java.lang.Object getScope(com.oracle.truffle.llvm.runtime.LLVMContext);
descriptor: (Lcom/oracle/truffle/llvm/runtime/LLVMContext;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.oracle.truffle.llvm.runtime.LLVMContext.getGlobalScope:()Lcom/oracle/truffle/llvm/runtime/LLVMScope;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 1 1 context Lcom/oracle/truffle/llvm/runtime/LLVMContext;
MethodParameters:
Name Flags
context
protected org.graalvm.options.OptionDescriptors getOptionDescriptors();
descriptor: ()Lorg/graalvm/options/OptionDescriptors;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic com.oracle.truffle.llvm.runtime.config.Configurations.getOptionDescriptors:()Lorg/graalvm/options/OptionDescriptors;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
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 start local 1 start local 2 0: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 1 1 thread Ljava/lang/Thread;
0 1 2 singleThreaded Z
MethodParameters:
Name Flags
thread
singleThreaded
protected void disposeThread(com.oracle.truffle.llvm.runtime.LLVMContext, java.lang.Thread);
descriptor: (Lcom/oracle/truffle/llvm/runtime/LLVMContext;Ljava/lang/Thread;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial com.oracle.truffle.api.TruffleLanguage.disposeThread:(Ljava/lang/Object;Ljava/lang/Thread;)V
1: aload 1
invokevirtual com.oracle.truffle.llvm.runtime.LLVMContext.isInitialized:()Z
ifeq 3
2: aload 1
invokevirtual com.oracle.truffle.llvm.runtime.LLVMContext.getThreadingStack:()Lcom/oracle/truffle/llvm/runtime/memory/LLVMThreadingStack;
aload 0
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage.getLLVMMemory:()Lcom/oracle/truffle/llvm/runtime/memory/LLVMMemory;
aload 2
invokevirtual com.oracle.truffle.llvm.runtime.memory.LLVMThreadingStack.freeStack:(Lcom/oracle/truffle/llvm/runtime/memory/LLVMMemory;Ljava/lang/Thread;)V
3: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 4 1 context Lcom/oracle/truffle/llvm/runtime/LLVMContext;
0 4 2 thread Ljava/lang/Thread;
MethodParameters:
Name Flags
context
thread
protected java.lang.Iterable<com.oracle.truffle.api.Scope> findLocalScopes(com.oracle.truffle.llvm.runtime.LLVMContext, com.oracle.truffle.api.nodes.Node, com.oracle.truffle.api.frame.Frame);
descriptor: (Lcom/oracle/truffle/llvm/runtime/LLVMContext;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;)Ljava/lang/Iterable;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual com.oracle.truffle.llvm.runtime.LLVMContext.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getOptions:()Lorg/graalvm/options/OptionValues;
getstatic com.oracle.truffle.llvm.runtime.options.SulongEngineOption.LL_DEBUG:Lorg/graalvm/options/OptionKey;
invokeinterface org.graalvm.options.OptionValues.get:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 2
1: aload 2
aload 3
aload 1
invokestatic com.oracle.truffle.llvm.runtime.debug.scope.LLVMDebuggerScopeFactory.createIRLevelScope:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;Lcom/oracle/truffle/llvm/runtime/LLVMContext;)Ljava/lang/Iterable;
areturn
2: StackMap locals:
StackMap stack:
aload 2
aload 3
aload 1
invokestatic com.oracle.truffle.llvm.runtime.debug.scope.LLVMDebuggerScopeFactory.createSourceLevelScope:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;Lcom/oracle/truffle/llvm/runtime/LLVMContext;)Ljava/util/Collection;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
0 3 1 context Lcom/oracle/truffle/llvm/runtime/LLVMContext;
0 3 2 node Lcom/oracle/truffle/api/nodes/Node;
0 3 3 frame Lcom/oracle/truffle/api/frame/Frame;
Signature: (Lcom/oracle/truffle/llvm/runtime/LLVMContext;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;)Ljava/lang/Iterable<Lcom/oracle/truffle/api/Scope;>;
MethodParameters:
Name Flags
context
node
frame
protected void initializeMultipleContexts();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.oracle.truffle.api.TruffleLanguage.initializeMultipleContexts:()V
1: aload 0
getfield com.oracle.truffle.llvm.runtime.LLVMLanguage.singleContextAssumption:Lcom/oracle/truffle/api/Assumption;
invokeinterface com.oracle.truffle.api.Assumption.invalidate:()V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/llvm/runtime/LLVMLanguage;
protected java.lang.Object createContext(com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$Env;)Ljava/lang/Object;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage.createContext:(Lcom/oracle/truffle/api/TruffleLanguage$Env;)Lcom/oracle/truffle/llvm/runtime/LLVMContext;
areturn
LocalVariableTable:
Start End Slot Name Signature
protected void disposeThread(java.lang.Object, java.lang.Thread);
descriptor: (Ljava/lang/Object;Ljava/lang/Thread;)V
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast com.oracle.truffle.llvm.runtime.LLVMContext
aload 2
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage.disposeThread:(Lcom/oracle/truffle/llvm/runtime/LLVMContext;Ljava/lang/Thread;)V
return
LocalVariableTable:
Start End Slot Name Signature
protected boolean patchContext(java.lang.Object, com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage$Env;)Z
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast com.oracle.truffle.llvm.runtime.LLVMContext
aload 2
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage.patchContext:(Lcom/oracle/truffle/llvm/runtime/LLVMContext;Lcom/oracle/truffle/api/TruffleLanguage$Env;)Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
protected void initializeContext(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast com.oracle.truffle.llvm.runtime.LLVMContext
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage.initializeContext:(Lcom/oracle/truffle/llvm/runtime/LLVMContext;)V
return
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.lang.Exception
protected void disposeContext(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast com.oracle.truffle.llvm.runtime.LLVMContext
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage.disposeContext:(Lcom/oracle/truffle/llvm/runtime/LLVMContext;)V
return
LocalVariableTable:
Start End Slot Name Signature
protected java.lang.Object getScope(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast com.oracle.truffle.llvm.runtime.LLVMContext
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage.getScope:(Lcom/oracle/truffle/llvm/runtime/LLVMContext;)Ljava/lang/Object;
areturn
LocalVariableTable:
Start End Slot Name Signature
protected void finalizeContext(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast com.oracle.truffle.llvm.runtime.LLVMContext
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage.finalizeContext:(Lcom/oracle/truffle/llvm/runtime/LLVMContext;)V
return
LocalVariableTable:
Start End Slot Name Signature
protected java.lang.Iterable findLocalScopes(java.lang.Object, com.oracle.truffle.api.nodes.Node, com.oracle.truffle.api.frame.Frame);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;)Ljava/lang/Iterable;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
checkcast com.oracle.truffle.llvm.runtime.LLVMContext
aload 2
aload 3
invokevirtual com.oracle.truffle.llvm.runtime.LLVMLanguage.findLocalScopes:(Lcom/oracle/truffle/llvm/runtime/LLVMContext;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;)Ljava/lang/Iterable;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Lcom/oracle/truffle/api/TruffleLanguage<Lcom/oracle/truffle/llvm/runtime/LLVMContext;>;
SourceFile: "LLVMLanguage.java"
NestMembers:
com.oracle.truffle.llvm.runtime.LLVMLanguage$1 com.oracle.truffle.llvm.runtime.LLVMLanguage$2 com.oracle.truffle.llvm.runtime.LLVMLanguage$ContextExtensionKey com.oracle.truffle.llvm.runtime.LLVMLanguage$FreeGlobalsNode com.oracle.truffle.llvm.runtime.LLVMLanguage$InitializeContextNode com.oracle.truffle.llvm.runtime.LLVMLanguage$Loader
InnerClasses:
public abstract CompilationFinal = com.oracle.truffle.api.CompilerDirectives$CompilationFinal of com.oracle.truffle.api.CompilerDirectives
public abstract TruffleBoundary = com.oracle.truffle.api.CompilerDirectives$TruffleBoundary of com.oracle.truffle.api.CompilerDirectives
public final ContextPolicy = com.oracle.truffle.api.TruffleLanguage$ContextPolicy of com.oracle.truffle.api.TruffleLanguage
public final Env = com.oracle.truffle.api.TruffleLanguage$Env of com.oracle.truffle.api.TruffleLanguage
public final InlineParsingRequest = com.oracle.truffle.api.TruffleLanguage$InlineParsingRequest of com.oracle.truffle.api.TruffleLanguage
public final ParsingRequest = com.oracle.truffle.api.TruffleLanguage$ParsingRequest of com.oracle.truffle.api.TruffleLanguage
public abstract Registration = com.oracle.truffle.api.TruffleLanguage$Registration of com.oracle.truffle.api.TruffleLanguage
public abstract Factory = com.oracle.truffle.llvm.runtime.ContextExtension$Factory of com.oracle.truffle.llvm.runtime.ContextExtension
public abstract Key = com.oracle.truffle.llvm.runtime.ContextExtension$Key of com.oracle.truffle.llvm.runtime.ContextExtension
public abstract Registry = com.oracle.truffle.llvm.runtime.ContextExtension$Registry of com.oracle.truffle.llvm.runtime.ContextExtension
com.oracle.truffle.llvm.runtime.LLVMLanguage$1
com.oracle.truffle.llvm.runtime.LLVMLanguage$2
private final ContextExtensionKey = com.oracle.truffle.llvm.runtime.LLVMLanguage$ContextExtensionKey of com.oracle.truffle.llvm.runtime.LLVMLanguage
FreeGlobalsNode = com.oracle.truffle.llvm.runtime.LLVMLanguage$FreeGlobalsNode of com.oracle.truffle.llvm.runtime.LLVMLanguage
abstract InitializeContextNode = com.oracle.truffle.llvm.runtime.LLVMLanguage$InitializeContextNode of com.oracle.truffle.llvm.runtime.LLVMLanguage
public abstract Loader = com.oracle.truffle.llvm.runtime.LLVMLanguage$Loader of com.oracle.truffle.llvm.runtime.LLVMLanguage
public final InteropTypeRegistry = com.oracle.truffle.llvm.runtime.interop.access.LLVMInteropType$InteropTypeRegistry of com.oracle.truffle.llvm.runtime.interop.access.LLVMInteropType
RuntimeVisibleAnnotations:
com.oracle.truffle.api.TruffleLanguage$Registration(id = "llvm", name = "LLVM", internal = false, interactive = false, defaultMimeType = "application/x-llvm-ir-bitcode", byteMimeTypes = {"application/x-llvm-ir-bitcode", "application/x-sharedlib", "application/x-executable", "application/x-mach-binary"}, fileTypeDetectors = {Lcom/oracle/truffle/llvm/runtime/LLVMFileDetector;}, services = {Lcom/oracle/truffle/llvm/api/Toolchain;}, version = "10.0.0", contextPolicy = com.oracle.truffle.api.TruffleLanguage$ContextPolicy.SHARED:Lcom/oracle/truffle/api/TruffleLanguage$ContextPolicy;)
com.oracle.truffle.api.instrumentation.ProvidedTags(value = {Lcom/oracle/truffle/api/instrumentation/StandardTags$StatementTag;, Lcom/oracle/truffle/api/instrumentation/StandardTags$CallTag;, Lcom/oracle/truffle/api/instrumentation/StandardTags$RootTag;, Lcom/oracle/truffle/api/instrumentation/StandardTags$RootBodyTag;, Lcom/oracle/truffle/api/debug/DebuggerTags$AlwaysHalt;})