class com.oracle.objectfile.macho.DyLdInfoCommand extends com.oracle.objectfile.macho.MachOObjectFile$LoadCommand
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.objectfile.macho.DyLdInfoCommand
super_class: com.oracle.objectfile.macho.MachOObjectFile$LoadCommand
{
private final com.oracle.objectfile.macho.MachOObjectFile owner;
descriptor: Lcom/oracle/objectfile/macho/MachOObjectFile;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
com.oracle.objectfile.macho.ExportTrieElement export;
descriptor: Lcom/oracle/objectfile/macho/ExportTrieElement;
flags: (0x0000)
void <init>(java.lang.String, com.oracle.objectfile.macho.MachOObjectFile, boolean);
descriptor: (Ljava/lang/String;Lcom/oracle/objectfile/macho/MachOObjectFile;Z)V
flags: (0x0000)
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 2
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
aload 1
iload 3
ifeq 1
getstatic com.oracle.objectfile.macho.MachOObjectFile$LoadCommandKind.DYLD_INFO_ONLY:Lcom/oracle/objectfile/macho/MachOObjectFile$LoadCommandKind;
goto 2
StackMap locals: uninitialized-this java.lang.String com.oracle.objectfile.macho.MachOObjectFile int
StackMap stack: uninitialized-this com.oracle.objectfile.macho.MachOObjectFile java.lang.String
1: getstatic com.oracle.objectfile.macho.MachOObjectFile$LoadCommandKind.DYLD_INFO:Lcom/oracle/objectfile/macho/MachOObjectFile$LoadCommandKind;
StackMap locals: uninitialized-this java.lang.String com.oracle.objectfile.macho.MachOObjectFile int
StackMap stack: uninitialized-this com.oracle.objectfile.macho.MachOObjectFile java.lang.String com.oracle.objectfile.macho.MachOObjectFile$LoadCommandKind
2: invokespecial com.oracle.objectfile.macho.MachOObjectFile$LoadCommand.<init>:(Lcom/oracle/objectfile/macho/MachOObjectFile;Ljava/lang/String;Lcom/oracle/objectfile/macho/MachOObjectFile$LoadCommandKind;)V
3: aload 0
aload 2
putfield com.oracle.objectfile.macho.DyLdInfoCommand.owner:Lcom/oracle/objectfile/macho/MachOObjectFile;
4: aload 0
new com.oracle.objectfile.macho.ExportTrieElement
dup
aload 1
aload 2
invokespecial com.oracle.objectfile.macho.ExportTrieElement.<init>:(Ljava/lang/String;Lcom/oracle/objectfile/macho/MachOObjectFile;)V
putfield com.oracle.objectfile.macho.DyLdInfoCommand.export:Lcom/oracle/objectfile/macho/ExportTrieElement;
5: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/objectfile/macho/DyLdInfoCommand;
0 6 1 name Ljava/lang/String;
0 6 2 owner Lcom/oracle/objectfile/macho/MachOObjectFile;
0 6 3 reqDyld Z
MethodParameters:
Name Flags
name
owner
reqDyld
public java.lang.Iterable<com.oracle.objectfile.BuildDependency> getDependencies(java.util.Map<com.oracle.objectfile.ObjectFile$Element, com.oracle.objectfile.LayoutDecisionMap>);
descriptor: (Ljava/util/Map;)Ljava/lang/Iterable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokestatic com.oracle.objectfile.ObjectFile.minimalDependencies:(Ljava/util/Map;Lcom/oracle/objectfile/ObjectFile$Element;)Ljava/util/HashSet;
astore 2
start local 2 1: aload 1
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.objectfile.LayoutDecisionMap
getstatic com.oracle.objectfile.LayoutDecision$Kind.CONTENT:Lcom/oracle/objectfile/LayoutDecision$Kind;
invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecision:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Lcom/oracle/objectfile/LayoutDecision;
astore 3
start local 3 2: aload 2
aload 3
aload 1
aload 0
getfield com.oracle.objectfile.macho.DyLdInfoCommand.export:Lcom/oracle/objectfile/macho/ExportTrieElement;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.objectfile.LayoutDecisionMap
getstatic com.oracle.objectfile.LayoutDecision$Kind.OFFSET:Lcom/oracle/objectfile/LayoutDecision$Kind;
invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecision:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Lcom/oracle/objectfile/LayoutDecision;
invokestatic com.oracle.objectfile.BuildDependency.createOrGet:(Lcom/oracle/objectfile/LayoutDecision;Lcom/oracle/objectfile/LayoutDecision;)Lcom/oracle/objectfile/BuildDependency;
invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
pop
3: aload 2
aload 3
aload 1
aload 0
getfield com.oracle.objectfile.macho.DyLdInfoCommand.export:Lcom/oracle/objectfile/macho/ExportTrieElement;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.objectfile.LayoutDecisionMap
getstatic com.oracle.objectfile.LayoutDecision$Kind.SIZE:Lcom/oracle/objectfile/LayoutDecision$Kind;
invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecision:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Lcom/oracle/objectfile/LayoutDecision;
invokestatic com.oracle.objectfile.BuildDependency.createOrGet:(Lcom/oracle/objectfile/LayoutDecision;Lcom/oracle/objectfile/LayoutDecision;)Lcom/oracle/objectfile/BuildDependency;
invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
pop
4: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/objectfile/macho/DyLdInfoCommand;
0 5 1 decisions Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;
1 5 2 deps Ljava/util/HashSet<Lcom/oracle/objectfile/BuildDependency;>;
2 5 3 ourContent Lcom/oracle/objectfile/LayoutDecision;
Signature: (Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;)Ljava/lang/Iterable<Lcom/oracle/objectfile/BuildDependency;>;
MethodParameters:
Name Flags
decisions
public int getOrDecideSize(java.util.Map<com.oracle.objectfile.ObjectFile$Element, com.oracle.objectfile.LayoutDecisionMap>, );
descriptor: (Ljava/util/Map;I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
bipush 40
invokevirtual com.oracle.objectfile.macho.DyLdInfoCommand.getWrittenSize:(I)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/objectfile/macho/DyLdInfoCommand;
0 1 1 alreadyDecided Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;
0 1 2 sizeHint I
Signature: (Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;I)I
MethodParameters:
Name Flags
alreadyDecided
sizeHint
protected void writePayload(com.oracle.objectfile.io.OutputAssembler, java.util.Map<com.oracle.objectfile.ObjectFile$Element, com.oracle.objectfile.LayoutDecisionMap>);
descriptor: (Lcom/oracle/objectfile/io/OutputAssembler;Ljava/util/Map;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
iconst_0
invokeinterface com.oracle.objectfile.io.OutputAssembler.write4Byte:(I)V
1: aload 1
iconst_0
invokeinterface com.oracle.objectfile.io.OutputAssembler.write4Byte:(I)V
2: aload 1
iconst_0
invokeinterface com.oracle.objectfile.io.OutputAssembler.write4Byte:(I)V
3: aload 1
iconst_0
invokeinterface com.oracle.objectfile.io.OutputAssembler.write4Byte:(I)V
4: aload 1
iconst_0
invokeinterface com.oracle.objectfile.io.OutputAssembler.write4Byte:(I)V
5: aload 1
iconst_0
invokeinterface com.oracle.objectfile.io.OutputAssembler.write4Byte:(I)V
6: aload 1
iconst_0
invokeinterface com.oracle.objectfile.io.OutputAssembler.write4Byte:(I)V
7: aload 1
iconst_0
invokeinterface com.oracle.objectfile.io.OutputAssembler.write4Byte:(I)V
8: aload 1
aload 2
aload 0
getfield com.oracle.objectfile.macho.DyLdInfoCommand.export:Lcom/oracle/objectfile/macho/ExportTrieElement;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.objectfile.LayoutDecisionMap
getstatic com.oracle.objectfile.LayoutDecision$Kind.OFFSET:Lcom/oracle/objectfile/LayoutDecision$Kind;
invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecidedValue:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
invokeinterface com.oracle.objectfile.io.OutputAssembler.write4Byte:(I)V
9: aload 1
aload 2
aload 0
getfield com.oracle.objectfile.macho.DyLdInfoCommand.export:Lcom/oracle/objectfile/macho/ExportTrieElement;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.objectfile.LayoutDecisionMap
getstatic com.oracle.objectfile.LayoutDecision$Kind.SIZE:Lcom/oracle/objectfile/LayoutDecision$Kind;
invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecidedValue:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
invokeinterface com.oracle.objectfile.io.OutputAssembler.write4Byte:(I)V
10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/oracle/objectfile/macho/DyLdInfoCommand;
0 11 1 out Lcom/oracle/objectfile/io/OutputAssembler;
0 11 2 alreadyDecided Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;
Signature: (Lcom/oracle/objectfile/io/OutputAssembler;Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;)V
MethodParameters:
Name Flags
out
alreadyDecided
}
SourceFile: "DyLdInfoCommand.java"
InnerClasses:
public final Kind = com.oracle.objectfile.LayoutDecision$Kind of com.oracle.objectfile.LayoutDecision
public abstract Element = com.oracle.objectfile.ObjectFile$Element of com.oracle.objectfile.ObjectFile
public abstract LoadCommand = com.oracle.objectfile.macho.MachOObjectFile$LoadCommand of com.oracle.objectfile.macho.MachOObjectFile
public LoadCommandKind = com.oracle.objectfile.macho.MachOObjectFile$LoadCommandKind of com.oracle.objectfile.macho.MachOObjectFile