public final class com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser
super_class: java.lang.Object
{
private final com.oracle.truffle.llvm.parser.scanner.LLVMScanner$LazyScanner scanner;
descriptor: Lcom/oracle/truffle/llvm/parser/scanner/LLVMScanner$LazyScanner;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public final com.oracle.truffle.llvm.parser.model.IRScope scope;
descriptor: Lcom/oracle/truffle/llvm/parser/model/IRScope;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
private final com.oracle.truffle.llvm.parser.listeners.Types types;
descriptor: Lcom/oracle/truffle/llvm/parser/listeners/Types;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.oracle.truffle.llvm.parser.model.functions.FunctionDefinition function;
descriptor: Lcom/oracle/truffle/llvm/parser/model/functions/FunctionDefinition;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int mode;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.oracle.truffle.llvm.parser.listeners.ParameterAttributes paramAttributes;
descriptor: Lcom/oracle/truffle/llvm/parser/listeners/ParameterAttributes;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.oracle.truffle.llvm.parser.text.LLSourceBuilder llSource;
descriptor: Lcom/oracle/truffle/llvm/parser/text/LLSourceBuilder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private boolean isParsed;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public void <init>(com.oracle.truffle.llvm.parser.scanner.LLVMScanner$LazyScanner, com.oracle.truffle.llvm.parser.model.IRScope, com.oracle.truffle.llvm.parser.listeners.Types, com.oracle.truffle.llvm.parser.model.functions.FunctionDefinition, int, com.oracle.truffle.llvm.parser.listeners.ParameterAttributes, com.oracle.truffle.llvm.parser.text.LLSourceBuilder);
descriptor: (Lcom/oracle/truffle/llvm/parser/scanner/LLVMScanner$LazyScanner;Lcom/oracle/truffle/llvm/parser/model/IRScope;Lcom/oracle/truffle/llvm/parser/listeners/Types;Lcom/oracle/truffle/llvm/parser/model/functions/FunctionDefinition;ILcom/oracle/truffle/llvm/parser/listeners/ParameterAttributes;Lcom/oracle/truffle/llvm/parser/text/LLSourceBuilder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=8, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.scanner:Lcom/oracle/truffle/llvm/parser/scanner/LLVMScanner$LazyScanner;
2: aload 0
aload 2
putfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.scope:Lcom/oracle/truffle/llvm/parser/model/IRScope;
3: aload 0
aload 3
putfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.types:Lcom/oracle/truffle/llvm/parser/listeners/Types;
4: aload 0
aload 4
putfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.function:Lcom/oracle/truffle/llvm/parser/model/functions/FunctionDefinition;
5: aload 0
iload 5
putfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.mode:I
6: aload 0
aload 6
putfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.paramAttributes:Lcom/oracle/truffle/llvm/parser/listeners/ParameterAttributes;
7: aload 0
aload 7
putfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.llSource:Lcom/oracle/truffle/llvm/parser/text/LLSourceBuilder;
8: aload 0
iconst_0
putfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.isParsed:Z
9: return
end local 7 end local 6 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 10 0 this Lcom/oracle/truffle/llvm/parser/model/functions/LazyFunctionParser;
0 10 1 scanner Lcom/oracle/truffle/llvm/parser/scanner/LLVMScanner$LazyScanner;
0 10 2 scope Lcom/oracle/truffle/llvm/parser/model/IRScope;
0 10 3 types Lcom/oracle/truffle/llvm/parser/listeners/Types;
0 10 4 function Lcom/oracle/truffle/llvm/parser/model/functions/FunctionDefinition;
0 10 5 mode I
0 10 6 paramAttributes Lcom/oracle/truffle/llvm/parser/listeners/ParameterAttributes;
0 10 7 llSource Lcom/oracle/truffle/llvm/parser/text/LLSourceBuilder;
MethodParameters:
Name Flags
scanner
scope
types
function
mode
paramAttributes
llSource
public void parse(com.oracle.truffle.llvm.parser.metadata.debuginfo.DebugInfoFunctionProcessor, com.oracle.truffle.api.source.Source, com.oracle.truffle.llvm.parser.LLVMParserRuntime, com.oracle.truffle.llvm.runtime.LLVMContext);
descriptor: (Lcom/oracle/truffle/llvm/parser/metadata/debuginfo/DebugInfoFunctionProcessor;Lcom/oracle/truffle/api/source/Source;Lcom/oracle/truffle/llvm/parser/LLVMParserRuntime;Lcom/oracle/truffle/llvm/runtime/LLVMContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.isParsed:Z
ifne 13
1: aload 0
getfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.scope:Lcom/oracle/truffle/llvm/parser/model/IRScope;
dup
astore 5
monitorenter
2: new com.oracle.truffle.llvm.parser.listeners.Function
dup
aload 0
getfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.scope:Lcom/oracle/truffle/llvm/parser/model/IRScope;
aload 0
getfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.types:Lcom/oracle/truffle/llvm/parser/listeners/Types;
aload 0
getfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.function:Lcom/oracle/truffle/llvm/parser/model/functions/FunctionDefinition;
aload 0
getfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.mode:I
aload 0
getfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.paramAttributes:Lcom/oracle/truffle/llvm/parser/listeners/ParameterAttributes;
invokespecial com.oracle.truffle.llvm.parser.listeners.Function.<init>:(Lcom/oracle/truffle/llvm/parser/model/IRScope;Lcom/oracle/truffle/llvm/parser/listeners/Types;Lcom/oracle/truffle/llvm/parser/model/functions/FunctionDefinition;ILcom/oracle/truffle/llvm/parser/listeners/ParameterAttributes;)V
astore 6
start local 6 3: aload 6
invokevirtual com.oracle.truffle.llvm.parser.listeners.Function.setupScope:()V
4: aload 0
getfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.scanner:Lcom/oracle/truffle/llvm/parser/scanner/LLVMScanner$LazyScanner;
aload 6
invokevirtual com.oracle.truffle.llvm.parser.scanner.LLVMScanner$LazyScanner.scanBlock:(Lcom/oracle/truffle/llvm/parser/listeners/ParserListener;)V
5: aload 1
aload 6
invokevirtual com.oracle.truffle.llvm.parser.listeners.Function.getFunction:()Lcom/oracle/truffle/llvm/parser/model/functions/FunctionDefinition;
aload 6
invokevirtual com.oracle.truffle.llvm.parser.listeners.Function.getScope:()Lcom/oracle/truffle/llvm/parser/model/IRScope;
aload 2
invokevirtual com.oracle.truffle.llvm.parser.metadata.debuginfo.DebugInfoFunctionProcessor.process:(Lcom/oracle/truffle/llvm/parser/model/functions/FunctionDefinition;Lcom/oracle/truffle/llvm/parser/model/IRScope;Lcom/oracle/truffle/api/source/Source;)V
6: aload 4
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 8
7: aload 0
getfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.llSource:Lcom/oracle/truffle/llvm/parser/text/LLSourceBuilder;
aload 6
invokevirtual com.oracle.truffle.llvm.parser.listeners.Function.getFunction:()Lcom/oracle/truffle/llvm/parser/model/functions/FunctionDefinition;
aload 3
aload 4
invokevirtual com.oracle.truffle.llvm.parser.text.LLSourceBuilder.applySourceLocations:(Lcom/oracle/truffle/llvm/parser/model/functions/FunctionDefinition;Lcom/oracle/truffle/llvm/parser/LLVMParserRuntime;Lcom/oracle/truffle/llvm/runtime/LLVMContext;)V
8: StackMap locals: com.oracle.truffle.llvm.parser.model.IRScope com.oracle.truffle.llvm.parser.listeners.Function
StackMap stack:
aload 0
iconst_1
putfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.isParsed:Z
end local 6 9: aload 5
monitorexit
10: goto 13
StackMap locals: com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser com.oracle.truffle.llvm.parser.metadata.debuginfo.DebugInfoFunctionProcessor com.oracle.truffle.api.source.Source com.oracle.truffle.llvm.parser.LLVMParserRuntime com.oracle.truffle.llvm.runtime.LLVMContext com.oracle.truffle.llvm.parser.model.IRScope
StackMap stack: java.lang.Throwable
11: aload 5
monitorexit
12: athrow
13: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/truffle/llvm/parser/model/functions/LazyFunctionParser;
0 14 1 diProcessor Lcom/oracle/truffle/llvm/parser/metadata/debuginfo/DebugInfoFunctionProcessor;
0 14 2 bitcodeSource Lcom/oracle/truffle/api/source/Source;
0 14 3 runtime Lcom/oracle/truffle/llvm/parser/LLVMParserRuntime;
0 14 4 context Lcom/oracle/truffle/llvm/runtime/LLVMContext;
3 9 6 parser Lcom/oracle/truffle/llvm/parser/listeners/Function;
Exception table:
from to target type
2 10 11 any
11 12 11 any
MethodParameters:
Name Flags
diProcessor
bitcodeSource
runtime
context
public void parseLinkageName(com.oracle.truffle.llvm.parser.LLVMParserRuntime);
descriptor: (Lcom/oracle/truffle/llvm/parser/LLVMParserRuntime;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.scope:Lcom/oracle/truffle/llvm/parser/model/IRScope;
dup
astore 2
monitorenter
1: new com.oracle.truffle.llvm.parser.listeners.FunctionMDOnly
dup
aload 0
getfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.scope:Lcom/oracle/truffle/llvm/parser/model/IRScope;
aload 0
getfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.types:Lcom/oracle/truffle/llvm/parser/listeners/Types;
aload 0
getfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.function:Lcom/oracle/truffle/llvm/parser/model/functions/FunctionDefinition;
invokespecial com.oracle.truffle.llvm.parser.listeners.FunctionMDOnly.<init>:(Lcom/oracle/truffle/llvm/parser/model/IRScope;Lcom/oracle/truffle/llvm/parser/listeners/Types;Lcom/oracle/truffle/llvm/parser/model/functions/FunctionDefinition;)V
astore 3
start local 3 2: aload 3
invokevirtual com.oracle.truffle.llvm.parser.listeners.FunctionMDOnly.setupScope:()V
3: aload 0
getfield com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser.scanner:Lcom/oracle/truffle/llvm/parser/scanner/LLVMScanner$LazyScanner;
aload 3
invokevirtual com.oracle.truffle.llvm.parser.scanner.LLVMScanner$LazyScanner.scanBlock:(Lcom/oracle/truffle/llvm/parser/listeners/ParserListener;)V
4: goto 10
StackMap locals: com.oracle.truffle.llvm.parser.model.functions.LazyFunctionParser com.oracle.truffle.llvm.parser.LLVMParserRuntime com.oracle.truffle.llvm.parser.model.IRScope com.oracle.truffle.llvm.parser.listeners.FunctionMDOnly
StackMap stack: com.oracle.truffle.llvm.parser.listeners.MetadataSubprogramOnly$MDSubprogramParsedException
5: astore 4
start local 4 6: aload 4
getfield com.oracle.truffle.llvm.parser.listeners.MetadataSubprogramOnly$MDSubprogramParsedException.displayName:Ljava/lang/String;
astore 5
start local 5 7: aload 4
getfield com.oracle.truffle.llvm.parser.listeners.MetadataSubprogramOnly$MDSubprogramParsedException.linkageName:Ljava/lang/String;
astore 6
start local 6 8: aload 6
ifnull 10
aload 1
invokevirtual com.oracle.truffle.llvm.parser.LLVMParserRuntime.getFileScope:()Lcom/oracle/truffle/llvm/runtime/LLVMScope;
aload 5
invokevirtual com.oracle.truffle.llvm.runtime.LLVMScope.getFunction:(Ljava/lang/String;)Lcom/oracle/truffle/llvm/runtime/LLVMFunction;
ifnonnull 10
9: aload 1
invokevirtual com.oracle.truffle.llvm.parser.LLVMParserRuntime.getFileScope:()Lcom/oracle/truffle/llvm/runtime/LLVMScope;
aload 5
aload 6
invokevirtual com.oracle.truffle.llvm.runtime.LLVMScope.registerLinkageName:(Ljava/lang/String;Ljava/lang/String;)V
end local 6 end local 5 end local 4 end local 3 10: StackMap locals:
StackMap stack:
aload 2
monitorexit
11: goto 14
StackMap locals:
StackMap stack: java.lang.Throwable
12: aload 2
monitorexit
13: athrow
14: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/oracle/truffle/llvm/parser/model/functions/LazyFunctionParser;
0 15 1 runtime Lcom/oracle/truffle/llvm/parser/LLVMParserRuntime;
2 10 3 parser Lcom/oracle/truffle/llvm/parser/listeners/FunctionMDOnly;
6 10 4 e Lcom/oracle/truffle/llvm/parser/listeners/MetadataSubprogramOnly$MDSubprogramParsedException;
7 10 5 displayName Ljava/lang/String;
8 10 6 linkageName Ljava/lang/String;
Exception table:
from to target type
2 4 5 Class com.oracle.truffle.llvm.parser.listeners.MetadataSubprogramOnly$MDSubprogramParsedException
1 11 12 any
12 13 12 any
MethodParameters:
Name Flags
runtime
}
SourceFile: "LazyFunctionParser.java"
InnerClasses:
public final Env = com.oracle.truffle.api.TruffleLanguage$Env of com.oracle.truffle.api.TruffleLanguage
public MDSubprogramParsedException = com.oracle.truffle.llvm.parser.listeners.MetadataSubprogramOnly$MDSubprogramParsedException of com.oracle.truffle.llvm.parser.listeners.MetadataSubprogramOnly
public final LazyScanner = com.oracle.truffle.llvm.parser.scanner.LLVMScanner$LazyScanner of com.oracle.truffle.llvm.parser.scanner.LLVMScanner