class org.graalvm.compiler.hotspot.meta.HotSpotGraphBuilderPlugins$12 implements org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.graalvm.compiler.hotspot.meta.HotSpotGraphBuilderPlugins$12
super_class: java.lang.Object
{
private final org.graalvm.compiler.word.WordTypes val$wordTypes;
descriptor: Lorg/graalvm/compiler/word/WordTypes;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final org.graalvm.compiler.hotspot.GraalHotSpotVMConfig val$config;
descriptor: Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final jdk.vm.ci.meta.MetaAccessProvider val$metaAccess;
descriptor: Ljdk/vm/ci/meta/MetaAccessProvider;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(org.graalvm.compiler.word.WordTypes, org.graalvm.compiler.hotspot.GraalHotSpotVMConfig, jdk.vm.ci.meta.MetaAccessProvider);
descriptor: (Lorg/graalvm/compiler/word/WordTypes;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Ljdk/vm/ci/meta/MetaAccessProvider;)V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=4
start local 0 0: aload 0
aload 1
putfield org.graalvm.compiler.hotspot.meta.HotSpotGraphBuilderPlugins$12.val$wordTypes:Lorg/graalvm/compiler/word/WordTypes;
aload 0
aload 2
putfield org.graalvm.compiler.hotspot.meta.HotSpotGraphBuilderPlugins$12.val$config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
aload 0
aload 3
putfield org.graalvm.compiler.hotspot.meta.HotSpotGraphBuilderPlugins$12.val$metaAccess:Ljdk/vm/ci/meta/MetaAccessProvider;
aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/meta/HotSpotGraphBuilderPlugins$12;
MethodParameters:
Name Flags
val$wordTypes final
val$config final
val$metaAccess final
public boolean apply(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext, jdk.vm.ci.meta.ResolvedJavaMethod, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin$Receiver);
descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
new org.graalvm.compiler.hotspot.nodes.CurrentJavaThreadNode
dup
aload 0
getfield org.graalvm.compiler.hotspot.meta.HotSpotGraphBuilderPlugins$12.val$wordTypes:Lorg/graalvm/compiler/word/WordTypes;
invokevirtual org.graalvm.compiler.word.WordTypes.getWordKind:()Ljdk/vm/ci/meta/JavaKind;
invokespecial org.graalvm.compiler.hotspot.nodes.CurrentJavaThreadNode.<init>:(Ljdk/vm/ci/meta/JavaKind;)V
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.add:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
checkcast org.graalvm.compiler.hotspot.nodes.CurrentJavaThreadNode
astore 4
start local 4 1: aload 1
aload 0
getfield org.graalvm.compiler.hotspot.meta.HotSpotGraphBuilderPlugins$12.val$config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.threadObjectOffset:I
i2l
invokestatic org.graalvm.compiler.nodes.ConstantNode.forLong:(J)Lorg/graalvm/compiler/nodes/ConstantNode;
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.add:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
astore 5
start local 5 2: aload 1
new org.graalvm.compiler.nodes.memory.address.OffsetAddressNode
dup
aload 4
aload 5
invokespecial org.graalvm.compiler.nodes.memory.address.OffsetAddressNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.add:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
checkcast org.graalvm.compiler.nodes.memory.address.AddressNode
astore 6
start local 6 3: aload 1
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getAssumptions:()Ljdk/vm/ci/meta/Assumptions;
aload 0
getfield org.graalvm.compiler.hotspot.meta.HotSpotGraphBuilderPlugins$12.val$metaAccess:Ljdk/vm/ci/meta/MetaAccessProvider;
ldc Ljava/lang/Thread;
invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
invokestatic org.graalvm.compiler.core.common.type.TypeReference.create:(Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ResolvedJavaType;)Lorg/graalvm/compiler/core/common/type/TypeReference;
invokestatic org.graalvm.compiler.core.common.type.StampFactory.objectNonNull:(Lorg/graalvm/compiler/core/common/type/TypeReference;)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
astore 7
start local 7 4: aload 1
getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
new org.graalvm.compiler.nodes.memory.ReadNode
dup
aload 6
getstatic org.graalvm.compiler.hotspot.replacements.HotSpotReplacementsUtil.JAVA_THREAD_THREAD_OBJECT_LOCATION:Ljdk/internal/vm/compiler/word/LocationIdentity;
aload 7
getstatic org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType.NONE:Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
invokespecial org.graalvm.compiler.nodes.memory.ReadNode.<init>:(Lorg/graalvm/compiler/nodes/memory/address/AddressNode;Ljdk/internal/vm/compiler/word/LocationIdentity;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;)V
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.addPush:(Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
pop
5: iconst_1
ireturn
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 6 0 this Lorg/graalvm/compiler/hotspot/meta/HotSpotGraphBuilderPlugins$12;
0 6 1 b Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;
0 6 2 targetMethod Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 6 3 receiver Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;
1 6 4 thread Lorg/graalvm/compiler/hotspot/nodes/CurrentJavaThreadNode;
2 6 5 offset Lorg/graalvm/compiler/nodes/ValueNode;
3 6 6 address Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
4 6 7 stamp Lorg/graalvm/compiler/core/common/type/ObjectStamp;
MethodParameters:
Name Flags
b
targetMethod
receiver
}
SourceFile: "HotSpotGraphBuilderPlugins.java"
EnclosingMethod: org.graalvm.compiler.hotspot.meta.HotSpotGraphBuilderPlugins.registerThreadPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/word/WordTypes;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Lorg/graalvm/compiler/bytecode/BytecodeProvider;)V
NestHost: org.graalvm.compiler.hotspot.meta.HotSpotGraphBuilderPlugins
InnerClasses:
org.graalvm.compiler.hotspot.meta.HotSpotGraphBuilderPlugins$12
public abstract Receiver = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin$Receiver of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin
public final BarrierType = org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType of org.graalvm.compiler.nodes.memory.HeapAccess