class org.graalvm.compiler.nodes.util.ConstantFoldUtil$1 implements org.graalvm.compiler.core.common.spi.ConstantFieldProvider$ConstantFieldTool<org.graalvm.compiler.nodes.ConstantNode>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.graalvm.compiler.nodes.util.ConstantFoldUtil$1
super_class: java.lang.Object
{
private final jdk.vm.ci.meta.ConstantReflectionProvider val$constantReflection;
descriptor: Ljdk/vm/ci/meta/ConstantReflectionProvider;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final jdk.vm.ci.meta.ResolvedJavaField val$field;
descriptor: Ljdk/vm/ci/meta/ResolvedJavaField;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final jdk.vm.ci.meta.JavaConstant val$receiver;
descriptor: Ljdk/vm/ci/meta/JavaConstant;
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>(jdk.vm.ci.meta.ConstantReflectionProvider, jdk.vm.ci.meta.ResolvedJavaField, jdk.vm.ci.meta.JavaConstant, jdk.vm.ci.meta.MetaAccessProvider);
descriptor: (Ljdk/vm/ci/meta/ConstantReflectionProvider;Ljdk/vm/ci/meta/ResolvedJavaField;Ljdk/vm/ci/meta/JavaConstant;Ljdk/vm/ci/meta/MetaAccessProvider;)V
flags: (0x0000)
Code:
stack=2, locals=5, args_size=5
start local 0 0: aload 0
aload 1
putfield org.graalvm.compiler.nodes.util.ConstantFoldUtil$1.val$constantReflection:Ljdk/vm/ci/meta/ConstantReflectionProvider;
aload 0
aload 2
putfield org.graalvm.compiler.nodes.util.ConstantFoldUtil$1.val$field:Ljdk/vm/ci/meta/ResolvedJavaField;
aload 0
aload 3
putfield org.graalvm.compiler.nodes.util.ConstantFoldUtil$1.val$receiver:Ljdk/vm/ci/meta/JavaConstant;
aload 0
aload 4
putfield org.graalvm.compiler.nodes.util.ConstantFoldUtil$1.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/nodes/util/ConstantFoldUtil$1;
MethodParameters:
Name Flags
val$constantReflection final
val$field final
val$receiver final
val$metaAccess final
public jdk.vm.ci.meta.JavaConstant readValue();
descriptor: ()Ljdk/vm/ci/meta/JavaConstant;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.nodes.util.ConstantFoldUtil$1.val$constantReflection:Ljdk/vm/ci/meta/ConstantReflectionProvider;
aload 0
getfield org.graalvm.compiler.nodes.util.ConstantFoldUtil$1.val$field:Ljdk/vm/ci/meta/ResolvedJavaField;
aload 0
getfield org.graalvm.compiler.nodes.util.ConstantFoldUtil$1.val$receiver:Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.ConstantReflectionProvider.readFieldValue:(Ljdk/vm/ci/meta/ResolvedJavaField;Ljdk/vm/ci/meta/JavaConstant;)Ljdk/vm/ci/meta/JavaConstant;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/util/ConstantFoldUtil$1;
public jdk.vm.ci.meta.JavaConstant getReceiver();
descriptor: ()Ljdk/vm/ci/meta/JavaConstant;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.nodes.util.ConstantFoldUtil$1.val$receiver:Ljdk/vm/ci/meta/JavaConstant;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/util/ConstantFoldUtil$1;
public org.graalvm.compiler.nodes.ConstantNode foldConstant(jdk.vm.ci.meta.JavaConstant);
descriptor: (Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/nodes/ConstantNode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnull 2
1: aload 1
aload 0
getfield org.graalvm.compiler.nodes.util.ConstantFoldUtil$1.val$metaAccess:Ljdk/vm/ci/meta/MetaAccessProvider;
invokestatic org.graalvm.compiler.nodes.ConstantNode.forConstant:(Ljdk/vm/ci/meta/JavaConstant;Ljdk/vm/ci/meta/MetaAccessProvider;)Lorg/graalvm/compiler/nodes/ConstantNode;
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/nodes/util/ConstantFoldUtil$1;
0 3 1 ret Ljdk/vm/ci/meta/JavaConstant;
MethodParameters:
Name Flags
ret
public org.graalvm.compiler.nodes.ConstantNode foldStableArray(jdk.vm.ci.meta.JavaConstant, int, boolean);
descriptor: (Ljdk/vm/ci/meta/JavaConstant;IZ)Lorg/graalvm/compiler/nodes/ConstantNode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnull 2
1: aload 1
iload 2
iload 3
aload 0
getfield org.graalvm.compiler.nodes.util.ConstantFoldUtil$1.val$metaAccess:Ljdk/vm/ci/meta/MetaAccessProvider;
invokestatic org.graalvm.compiler.nodes.ConstantNode.forConstant:(Ljdk/vm/ci/meta/JavaConstant;IZLjdk/vm/ci/meta/MetaAccessProvider;)Lorg/graalvm/compiler/nodes/ConstantNode;
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/nodes/util/ConstantFoldUtil$1;
0 3 1 ret Ljdk/vm/ci/meta/JavaConstant;
0 3 2 stableDimensions I
0 3 3 isDefaultStable Z
MethodParameters:
Name Flags
ret
stableDimensions
isDefaultStable
public java.lang.Object foldConstant(jdk.vm.ci.meta.JavaConstant);
descriptor: (Ljdk/vm/ci/meta/JavaConstant;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.util.ConstantFoldUtil$1.foldConstant:(Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/nodes/ConstantNode;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.Object foldStableArray(jdk.vm.ci.meta.JavaConstant, int, boolean);
descriptor: (Ljdk/vm/ci/meta/JavaConstant;IZ)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
iload 2
iload 3
invokevirtual org.graalvm.compiler.nodes.util.ConstantFoldUtil$1.foldStableArray:(Ljdk/vm/ci/meta/JavaConstant;IZ)Lorg/graalvm/compiler/nodes/ConstantNode;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Lorg/graalvm/compiler/core/common/spi/ConstantFieldProvider$ConstantFieldTool<Lorg/graalvm/compiler/nodes/ConstantNode;>;
SourceFile: "ConstantFoldUtil.java"
EnclosingMethod: org.graalvm.compiler.nodes.util.ConstantFoldUtil.tryConstantFold:(Lorg/graalvm/compiler/core/common/spi/ConstantFieldProvider;Ljdk/vm/ci/meta/ConstantReflectionProvider;Ljdk/vm/ci/meta/MetaAccessProvider;Ljdk/vm/ci/meta/ResolvedJavaField;Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/nodes/ConstantNode;
NestHost: org.graalvm.compiler.nodes.util.ConstantFoldUtil
InnerClasses:
public abstract ConstantFieldTool = org.graalvm.compiler.core.common.spi.ConstantFieldProvider$ConstantFieldTool of org.graalvm.compiler.core.common.spi.ConstantFieldProvider
org.graalvm.compiler.nodes.util.ConstantFoldUtil$1