public final class org.graalvm.compiler.lir.gen.VerifyingMoveFactory implements org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.graalvm.compiler.lir.gen.VerifyingMoveFactory
super_class: java.lang.Object
{
private final org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory inner;
descriptor: Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
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 Lorg/graalvm/compiler/lir/gen/VerifyingMoveFactory;
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 org.graalvm.compiler.lir.gen.VerifyingMoveFactory.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory);
descriptor: (Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.graalvm.compiler.lir.gen.VerifyingMoveFactory.inner:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/lir/gen/VerifyingMoveFactory;
0 3 1 inner Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
MethodParameters:
Name Flags
inner
public boolean canInlineConstant(jdk.vm.ci.meta.JavaConstant);
descriptor: (Ljdk/vm/ci/meta/JavaConstant;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.compiler.lir.gen.VerifyingMoveFactory.inner:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
aload 1
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory.canInlineConstant:(Ljdk/vm/ci/meta/JavaConstant;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/gen/VerifyingMoveFactory;
0 1 1 c Ljdk/vm/ci/meta/JavaConstant;
MethodParameters:
Name Flags
c
public boolean allowConstantToStackMove(jdk.vm.ci.meta.Constant);
descriptor: (Ljdk/vm/ci/meta/Constant;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.compiler.lir.gen.VerifyingMoveFactory.inner:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
aload 1
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory.allowConstantToStackMove:(Ljdk/vm/ci/meta/Constant;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/gen/VerifyingMoveFactory;
0 1 1 constant Ljdk/vm/ci/meta/Constant;
MethodParameters:
Name Flags
constant
public org.graalvm.compiler.lir.LIRInstruction createMove(jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/LIRInstruction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.graalvm.compiler.lir.gen.VerifyingMoveFactory.inner:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
aload 1
aload 2
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory.createMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/LIRInstruction;
astore 3
start local 3 1: getstatic org.graalvm.compiler.lir.gen.VerifyingMoveFactory.$assertionsDisabled:Z
ifne 2
aload 3
aload 1
aload 2
invokestatic org.graalvm.compiler.lir.gen.VerifyingMoveFactory.checkResult:(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)Z
ifne 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: org.graalvm.compiler.lir.LIRInstruction
StackMap stack:
aload 3
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/lir/gen/VerifyingMoveFactory;
0 3 1 result Ljdk/vm/ci/meta/AllocatableValue;
0 3 2 input Ljdk/vm/ci/meta/Value;
1 3 3 inst Lorg/graalvm/compiler/lir/LIRInstruction;
MethodParameters:
Name Flags
result
input
public org.graalvm.compiler.lir.LIRInstruction createStackMove(jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.AllocatableValue);
descriptor: (Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/LIRInstruction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.graalvm.compiler.lir.gen.VerifyingMoveFactory.inner:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
aload 1
aload 2
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory.createStackMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/LIRInstruction;
astore 3
start local 3 1: getstatic org.graalvm.compiler.lir.gen.VerifyingMoveFactory.$assertionsDisabled:Z
ifne 2
aload 3
aload 1
aload 2
invokestatic org.graalvm.compiler.lir.gen.VerifyingMoveFactory.checkResult:(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)Z
ifne 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: org.graalvm.compiler.lir.LIRInstruction
StackMap stack:
aload 3
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/lir/gen/VerifyingMoveFactory;
0 3 1 result Ljdk/vm/ci/meta/AllocatableValue;
0 3 2 input Ljdk/vm/ci/meta/AllocatableValue;
1 3 3 inst Lorg/graalvm/compiler/lir/LIRInstruction;
MethodParameters:
Name Flags
result
input
public org.graalvm.compiler.lir.LIRInstruction createLoad(jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.Constant);
descriptor: (Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Constant;)Lorg/graalvm/compiler/lir/LIRInstruction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.graalvm.compiler.lir.gen.VerifyingMoveFactory.inner:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
aload 1
aload 2
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory.createLoad:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Constant;)Lorg/graalvm/compiler/lir/LIRInstruction;
astore 3
start local 3 1: getstatic org.graalvm.compiler.lir.gen.VerifyingMoveFactory.$assertionsDisabled:Z
ifne 3
aload 3
instanceof org.graalvm.compiler.lir.StandardOp$LoadConstantOp
ifeq 2
aload 3
aload 1
aconst_null
invokestatic org.graalvm.compiler.lir.gen.VerifyingMoveFactory.checkResult:(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)Z
ifne 3
StackMap locals: org.graalvm.compiler.lir.LIRInstruction
StackMap stack:
2: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/lir/gen/VerifyingMoveFactory;
0 4 1 result Ljdk/vm/ci/meta/AllocatableValue;
0 4 2 input Ljdk/vm/ci/meta/Constant;
1 4 3 inst Lorg/graalvm/compiler/lir/LIRInstruction;
MethodParameters:
Name Flags
result
input
private static boolean checkResult(org.graalvm.compiler.lir.LIRInstruction, jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new org.graalvm.compiler.lir.gen.VerifyingMoveFactory$CheckClosure
dup
aload 1
aload 2
invokespecial org.graalvm.compiler.lir.gen.VerifyingMoveFactory$CheckClosure.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
astore 3
start local 3 1: aload 0
aload 3
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic visitValue(Lorg/graalvm/compiler/lir/gen/VerifyingMoveFactory$CheckClosure;)Lorg/graalvm/compiler/lir/InstructionValueConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
org/graalvm/compiler/lir/gen/VerifyingMoveFactory$CheckClosure.inputProc(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V (5)
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachInput:(Lorg/graalvm/compiler/lir/InstructionValueConsumer;)V
2: aload 0
aload 3
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic visitValue(Lorg/graalvm/compiler/lir/gen/VerifyingMoveFactory$CheckClosure;)Lorg/graalvm/compiler/lir/InstructionValueConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
org/graalvm/compiler/lir/gen/VerifyingMoveFactory$CheckClosure.outputProc(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V (5)
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachOutput:(Lorg/graalvm/compiler/lir/InstructionValueConsumer;)V
3: aload 0
aload 3
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic visitValue(Lorg/graalvm/compiler/lir/gen/VerifyingMoveFactory$CheckClosure;)Lorg/graalvm/compiler/lir/InstructionValueConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
org/graalvm/compiler/lir/gen/VerifyingMoveFactory$CheckClosure.aliveProc(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V (5)
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachAlive:(Lorg/graalvm/compiler/lir/InstructionValueConsumer;)V
4: aload 0
aload 3
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic visitValue(Lorg/graalvm/compiler/lir/gen/VerifyingMoveFactory$CheckClosure;)Lorg/graalvm/compiler/lir/InstructionValueConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
org/graalvm/compiler/lir/gen/VerifyingMoveFactory$CheckClosure.tempProc(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V (5)
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachTemp:(Lorg/graalvm/compiler/lir/InstructionValueConsumer;)V
5: aload 0
aload 3
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic visitValue(Lorg/graalvm/compiler/lir/gen/VerifyingMoveFactory$CheckClosure;)Lorg/graalvm/compiler/lir/InstructionValueConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
org/graalvm/compiler/lir/gen/VerifyingMoveFactory$CheckClosure.stateProc(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V (5)
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachState:(Lorg/graalvm/compiler/lir/InstructionValueConsumer;)V
6: getstatic org.graalvm.compiler.lir.gen.VerifyingMoveFactory.$assertionsDisabled:Z
ifne 7
aload 3
getfield org.graalvm.compiler.lir.gen.VerifyingMoveFactory$CheckClosure.outputCount:I
iconst_1
if_icmpge 7
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "no output produced"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
7: StackMap locals: org.graalvm.compiler.lir.gen.VerifyingMoveFactory$CheckClosure
StackMap stack:
getstatic org.graalvm.compiler.lir.gen.VerifyingMoveFactory.$assertionsDisabled:Z
ifne 8
aload 3
getfield org.graalvm.compiler.lir.gen.VerifyingMoveFactory$CheckClosure.stateCount:I
ifeq 8
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "SpillMoveFactory: instruction must not have a state: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
8: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 inst Lorg/graalvm/compiler/lir/LIRInstruction;
0 9 1 result Ljdk/vm/ci/meta/AllocatableValue;
0 9 2 input Ljdk/vm/ci/meta/Value;
1 9 3 c Lorg/graalvm/compiler/lir/gen/VerifyingMoveFactory$CheckClosure;
MethodParameters:
Name Flags
inst
result
input
}
SourceFile: "VerifyingMoveFactory.java"
NestMembers:
org.graalvm.compiler.lir.gen.VerifyingMoveFactory$CheckClosure
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract LoadConstantOp = org.graalvm.compiler.lir.StandardOp$LoadConstantOp of org.graalvm.compiler.lir.StandardOp
public abstract MoveFactory = org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory of org.graalvm.compiler.lir.gen.LIRGeneratorTool
private CheckClosure = org.graalvm.compiler.lir.gen.VerifyingMoveFactory$CheckClosure of org.graalvm.compiler.lir.gen.VerifyingMoveFactory