public class org.graalvm.compiler.core.amd64.AMD64NodeMatchRules extends org.graalvm.compiler.core.gen.NodeMatchRules
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules
super_class: org.graalvm.compiler.core.gen.NodeMatchRules
{
private static volatile int[] $SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$org$graalvm$compiler$core$common$calc$FloatConvert;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
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.core.amd64.AMD64NodeMatchRules.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.graalvm.compiler.lir.gen.LIRGeneratorTool);
descriptor: (Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.graalvm.compiler.core.gen.NodeMatchRules.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 2 1 gen Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
MethodParameters:
Name Flags
gen
protected org.graalvm.compiler.lir.LIRFrameState getState(org.graalvm.compiler.nodes.memory.Access);
descriptor: (Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/lir/LIRFrameState;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.graalvm.compiler.nodes.DeoptimizingNode
ifeq 2
1: aload 0
aload 1
checkcast org.graalvm.compiler.nodes.DeoptimizingNode
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.state:(Lorg/graalvm/compiler/nodes/DeoptimizingNode;)Lorg/graalvm/compiler/lir/LIRFrameState;
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/core/amd64/AMD64NodeMatchRules;
0 3 1 access Lorg/graalvm/compiler/nodes/memory/Access;
MethodParameters:
Name Flags
access
protected jdk.vm.ci.amd64.AMD64Kind getMemoryKind(org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Ljdk/vm/ci/amd64/AMD64Kind;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLirKind:(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 1 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
MethodParameters:
Name Flags
access
protected org.graalvm.compiler.core.common.LIRKind getLirKind(org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/common/LIRKind;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.gen:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
aload 1
invokeinterface org.graalvm.compiler.nodes.memory.LIRLowerableAccess.getAccessStamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.getLIRKind:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/LIRKind;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 1 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
MethodParameters:
Name Flags
access
protected org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize getMemorySize(org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: invokestatic org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getMemoryKind:(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 1 - 6
1: 1
2: 2
3: 3
4: 4
5: 5
6: 6
default: 7
}
1: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.BYTE:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
areturn
2: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.WORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
areturn
3: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
areturn
4: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
areturn
5: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
areturn
6: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.SD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
areturn
7: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "unsupported memory access type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getMemoryKind:(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 8 1 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
MethodParameters:
Name Flags
access
protected org.graalvm.compiler.core.match.ComplexMatchResult emitCompareBranchMemory(org.graalvm.compiler.nodes.IfNode, org.graalvm.compiler.nodes.calc.CompareNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/nodes/calc/CompareNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0004) ACC_PROTECTED
Code:
stack=10, locals=10, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.condition:()Lorg/graalvm/compiler/core/common/calc/CanonicalCondition;
invokevirtual org.graalvm.compiler.core.common.calc.CanonicalCondition.asCondition:()Lorg/graalvm/compiler/core/common/calc/Condition;
astore 5
start local 5 1: aload 0
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getMemoryKind:(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Ljdk/vm/ci/amd64/AMD64Kind;
astore 6
start local 6 2: iconst_0
istore 7
start local 7 3: aload 3
invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
ifeq 16
4: aload 3
invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
astore 8
start local 8 5: aload 8
ifnull 11
6: aload 6
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpne 8
aload 8
invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.isObject:()Z
ifne 8
aload 8
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
invokestatic org.graalvm.compiler.core.common.NumUtil.isInt:(J)Z
ifne 8
7: aconst_null
areturn
8: StackMap locals: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.nodes.IfNode org.graalvm.compiler.nodes.calc.CompareNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.memory.LIRLowerableAccess org.graalvm.compiler.core.common.calc.Condition jdk.vm.ci.amd64.AMD64Kind int jdk.vm.ci.meta.JavaConstant
StackMap stack:
aload 6
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpne 9
aload 8
invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.isObject:()Z
ifne 9
aload 8
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
invokestatic org.graalvm.compiler.core.common.NumUtil.isInt:(J)Z
ifeq 9
iconst_1
goto 10
StackMap locals:
StackMap stack:
9: iconst_0
StackMap locals:
StackMap stack: int
10: istore 7
11: StackMap locals:
StackMap stack:
aload 6
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpne 13
12: iconst_1
istore 7
13: StackMap locals:
StackMap stack:
aload 6
invokevirtual jdk.vm.ci.amd64.AMD64Kind.isXMM:()Z
ifeq 16
14: aload 1
invokevirtual org.graalvm.compiler.nodes.IfNode.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
ldc "Skipping constant compares for float kinds"
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;)V
15: aconst_null
areturn
end local 8 16: StackMap locals:
StackMap stack:
iload 7
istore 8
start local 8 17: aload 2
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
invokestatic org.graalvm.compiler.nodes.util.GraphUtil.unproxify:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
aload 4
if_acmpne 18
aload 5
invokevirtual org.graalvm.compiler.core.common.calc.Condition.mirror:()Lorg/graalvm/compiler/core/common/calc/Condition;
goto 19
StackMap locals: int
StackMap stack:
18: aload 5
StackMap locals:
StackMap stack: org.graalvm.compiler.core.common.calc.Condition
19: astore 9
start local 9 20: new org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1
dup
aload 0
aload 1
aload 2
aload 3
iload 8
aload 4
aload 6
aload 9
invokespecial org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.<init>:(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/nodes/calc/CompareNode;Lorg/graalvm/compiler/nodes/ValueNode;ZLorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Ljdk/vm/ci/amd64/AMD64Kind;Lorg/graalvm/compiler/core/common/calc/Condition;)V
areturn
end local 9 end local 8 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 21 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 21 1 ifNode Lorg/graalvm/compiler/nodes/IfNode;
0 21 2 compare Lorg/graalvm/compiler/nodes/calc/CompareNode;
0 21 3 value Lorg/graalvm/compiler/nodes/ValueNode;
0 21 4 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
1 21 5 cond Lorg/graalvm/compiler/core/common/calc/Condition;
2 21 6 kind Ljdk/vm/ci/amd64/AMD64Kind;
3 21 7 matchedAsConstant Z
5 16 8 constant Ljdk/vm/ci/meta/JavaConstant;
17 21 8 matchedAsConstantFinal Z
20 21 9 finalCondition Lorg/graalvm/compiler/core/common/calc/Condition;
MethodParameters:
Name Flags
ifNode
compare
value
access
private org.graalvm.compiler.core.match.ComplexMatchResult emitIntegerTestBranchMemory(org.graalvm.compiler.nodes.IfNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.IfNode.trueSuccessor:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRBlock:(Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/lir/LabelRef;
astore 4
start local 4 1: aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.IfNode.falseSuccessor:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRBlock:(Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/lir/LabelRef;
astore 5
start local 5 2: aload 1
aload 1
invokevirtual org.graalvm.compiler.nodes.IfNode.trueSuccessor:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.nodes.IfNode.probability:(Lorg/graalvm/compiler/nodes/AbstractBeginNode;)D
dstore 6
start local 6 3: aload 0
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getMemoryKind:(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Ljdk/vm/ci/amd64/AMD64Kind;
astore 8
start local 8 4: aload 8
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpne 5
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
goto 6
StackMap locals: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.nodes.IfNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.memory.LIRLowerableAccess org.graalvm.compiler.lir.LabelRef org.graalvm.compiler.lir.LabelRef double jdk.vm.ci.amd64.AMD64Kind
StackMap stack:
5: getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
StackMap locals:
StackMap stack: org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
6: astore 9
start local 9 7: aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
ifeq 12
8: aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
astore 10
start local 10 9: aload 10
ifnull 11
aload 8
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpne 11
aload 10
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
invokestatic org.graalvm.compiler.core.common.NumUtil.isInt:(J)Z
ifne 11
10: aconst_null
areturn
11: StackMap locals: org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize jdk.vm.ci.meta.JavaConstant
StackMap stack:
aload 0
aload 3
aload 9
aload 10
aload 4
aload 5
dload 6
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Ljdk/vm/ci/meta/JavaConstant;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$0(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Ljdk/vm/ci/meta/JavaConstant;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;DLorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
end local 10 12: StackMap locals:
StackMap stack:
aload 0
aload 3
aload 9
aload 2
aload 4
aload 5
dload 6
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$1(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;DLorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
end local 9 end local 8 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 13 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 13 1 x Lorg/graalvm/compiler/nodes/IfNode;
0 13 2 value Lorg/graalvm/compiler/nodes/ValueNode;
0 13 3 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
1 13 4 trueLabel Lorg/graalvm/compiler/lir/LabelRef;
2 13 5 falseLabel Lorg/graalvm/compiler/lir/LabelRef;
3 13 6 trueLabelProbability D
4 13 8 kind Ljdk/vm/ci/amd64/AMD64Kind;
7 13 9 size Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
9 12 10 constant Ljdk/vm/ci/meta/JavaConstant;
MethodParameters:
Name Flags
x
value
access
protected org.graalvm.compiler.core.match.ComplexMatchResult emitConvertMemoryOp(jdk.vm.ci.meta.PlatformKind, org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp, org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize, org.graalvm.compiler.nodes.memory.Access, jdk.vm.ci.meta.ValueKind<?>);
descriptor: (Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/memory/Access;Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 4
aload 5
aload 1
aload 2
aload 3
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/memory/Access;Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$2(Lorg/graalvm/compiler/nodes/memory/Access;Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
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 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 1 kind Ljdk/vm/ci/meta/PlatformKind;
0 1 2 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
0 1 3 size Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
0 1 4 access Lorg/graalvm/compiler/nodes/memory/Access;
0 1 5 addressKind Ljdk/vm/ci/meta/ValueKind<*>;
Signature: (Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/memory/Access;Ljdk/vm/ci/meta/ValueKind<*>;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
MethodParameters:
Name Flags
kind
op
size
access
addressKind
protected org.graalvm.compiler.core.match.ComplexMatchResult emitConvertMemoryOp(jdk.vm.ci.meta.PlatformKind, org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp, org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize, org.graalvm.compiler.nodes.memory.Access);
descriptor: (Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
aload 4
aconst_null
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitConvertMemoryOp:(Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/memory/Access;Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 1 kind Ljdk/vm/ci/meta/PlatformKind;
0 1 2 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
0 1 3 size Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
0 1 4 access Lorg/graalvm/compiler/nodes/memory/Access;
MethodParameters:
Name Flags
kind
op
size
access
private org.graalvm.compiler.core.match.ComplexMatchResult emitSignExtendMemory(org.graalvm.compiler.nodes.memory.Access, int, int, jdk.vm.ci.meta.ValueKind<?>);
descriptor: (Lorg/graalvm/compiler/nodes/memory/Access;IILjdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.$assertionsDisabled:Z
ifne 2
iload 2
iload 3
if_icmpgt 1
iload 3
bipush 64
if_icmple 2
StackMap locals:
StackMap stack:
1: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aconst_null
astore 5
start local 5 3: iload 2
iload 3
if_icmpne 5
4: aconst_null
areturn
5: StackMap locals: jdk.vm.ci.amd64.AMD64Kind
StackMap stack:
iload 3
bipush 32
if_icmple 17
6: getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
astore 5
7: getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
astore 7
start local 7 8: iload 2
lookupswitch { // 3
8: 9
16: 11
32: 13
default: 15
}
9: StackMap locals: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.nodes.memory.Access int int jdk.vm.ci.meta.ValueKind jdk.vm.ci.amd64.AMD64Kind top org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVSXB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
astore 6
start local 6 10: goto 26
end local 6 11: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVSX:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
astore 6
start local 6 12: goto 26
end local 6 13: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVSXD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
astore 6
start local 6 14: goto 26
end local 6 15: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "unsupported sign extension ("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " bit -> "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " bit)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
start local 6 16: StackMap locals: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.nodes.memory.Access int int jdk.vm.ci.meta.ValueKind jdk.vm.ci.amd64.AMD64Kind org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
StackMap stack:
goto 26
end local 7 end local 6 17: StackMap locals:
StackMap stack:
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
astore 5
18: getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
astore 7
start local 7 19: iload 2
lookupswitch { // 3
8: 20
16: 22
32: 24
default: 25
}
20: StackMap locals: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.nodes.memory.Access int int jdk.vm.ci.meta.ValueKind jdk.vm.ci.amd64.AMD64Kind top org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVSXB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
astore 6
start local 6 21: goto 26
end local 6 22: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVSX:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
astore 6
start local 6 23: goto 26
end local 6 24: StackMap locals:
StackMap stack:
aconst_null
areturn
25: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "unsupported sign extension ("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " bit -> "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " bit)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
start local 6 26: StackMap locals: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.nodes.memory.Access int int jdk.vm.ci.meta.ValueKind jdk.vm.ci.amd64.AMD64Kind org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
StackMap stack:
aload 5
ifnull 28
aload 6
ifnull 28
27: aload 0
aload 5
aload 6
aload 7
aload 1
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitConvertMemoryOp:(Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/memory/Access;Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
28: StackMap locals:
StackMap stack:
aconst_null
areturn
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 29 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 29 1 access Lorg/graalvm/compiler/nodes/memory/Access;
0 29 2 fromBits I
0 29 3 toBits I
0 29 4 addressKind Ljdk/vm/ci/meta/ValueKind<*>;
3 29 5 kind Ljdk/vm/ci/amd64/AMD64Kind;
10 11 6 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
12 13 6 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
14 15 6 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
16 17 6 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
21 22 6 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
23 24 6 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
26 29 6 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
8 17 7 size Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
19 29 7 size Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
Signature: (Lorg/graalvm/compiler/nodes/memory/Access;IILjdk/vm/ci/meta/ValueKind<*>;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
MethodParameters:
Name Flags
access
fromBits
toBits
addressKind
private jdk.vm.ci.meta.Value emitReinterpretMemory(org.graalvm.compiler.core.common.LIRKind, org.graalvm.compiler.nodes.memory.Access);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/nodes/memory/Access;)Ljdk/vm/ci/meta/Value;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokeinterface org.graalvm.compiler.nodes.memory.Access.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
checkcast org.graalvm.compiler.lir.amd64.AMD64AddressValue
astore 3
start local 3 1: aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getState:(Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/lir/LIRFrameState;
astore 4
start local 4 2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
aload 1
aload 3
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitLoad:(Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 4 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/core/amd64/AMD64NodeMatchRules;
0 3 1 to Lorg/graalvm/compiler/core/common/LIRKind;
0 3 2 access Lorg/graalvm/compiler/nodes/memory/Access;
1 3 3 address Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
2 3 4 state Lorg/graalvm/compiler/lir/LIRFrameState;
MethodParameters:
Name Flags
to
access
private boolean supports(jdk.vm.ci.amd64.AMD64$CPUFeature);
descriptor: (Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRGeneratorTool:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
checkcast jdk.vm.ci.amd64.AMD64
invokevirtual jdk.vm.ci.amd64.AMD64.getFeatures:()Ljava/util/EnumSet;
aload 1
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 1 feature Ljdk/vm/ci/amd64/AMD64$CPUFeature;
MethodParameters:
Name Flags
feature
public org.graalvm.compiler.core.match.ComplexMatchResult logicalAndNot(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.BMI1:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
ifne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$3(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 3 1 a Lorg/graalvm/compiler/nodes/ValueNode;
0 3 2 b Lorg/graalvm/compiler/nodes/ValueNode;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRule(value = "(And (Not a) b)")
MethodParameters:
Name Flags
a
b
public org.graalvm.compiler.core.match.ComplexMatchResult lowestSetIsolatedBit(org.graalvm.compiler.nodes.ValueNode);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.BMI1:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
ifne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$4(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 3 1 a Lorg/graalvm/compiler/nodes/ValueNode;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRule(value = "(And a (Negate a))")
MethodParameters:
Name Flags
a
public org.graalvm.compiler.core.match.ComplexMatchResult getMaskUpToLowestSetBit(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.BMI1:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
ifne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.isJavaConstant:()Z
ifne 4
3: aconst_null
areturn
4: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
astore 3
start local 3 5: aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 8
6: aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
i2l
lstore 4
start local 4 7: goto 12
end local 4 StackMap locals: jdk.vm.ci.meta.JavaConstant
StackMap stack:
8: aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
getstatic jdk.vm.ci.meta.JavaKind.Long:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 11
9: aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lstore 4
start local 4 10: goto 12
end local 4 11: StackMap locals:
StackMap stack:
aconst_null
areturn
start local 4 12: StackMap locals: long
StackMap stack:
lload 4
ldc -1
lcmp
ifne 14
13: aload 0
aload 1
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$5(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
14: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 15 1 a Lorg/graalvm/compiler/nodes/ValueNode;
0 15 2 b Lorg/graalvm/compiler/nodes/ValueNode;
5 15 3 bCst Ljdk/vm/ci/meta/JavaConstant;
7 8 4 bValue J
10 11 4 bValue J
12 15 4 bValue J
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRule(value = "(Xor a (Add a b))")
MethodParameters:
Name Flags
a
b
public org.graalvm.compiler.core.match.ComplexMatchResult resetLowestSetBit(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.BMI1:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
ifne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.isJavaConstant:()Z
ifne 4
3: aconst_null
areturn
4: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
astore 3
start local 3 5: aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 8
6: aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
i2l
lstore 4
start local 4 7: goto 12
end local 4 StackMap locals: jdk.vm.ci.meta.JavaConstant
StackMap stack:
8: aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
getstatic jdk.vm.ci.meta.JavaKind.Long:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 11
9: aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lstore 4
start local 4 10: goto 12
end local 4 11: StackMap locals:
StackMap stack:
aconst_null
areturn
start local 4 12: StackMap locals: long
StackMap stack:
lload 4
ldc -1
lcmp
ifne 14
13: aload 0
aload 1
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$6(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
14: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 15 1 a Lorg/graalvm/compiler/nodes/ValueNode;
0 15 2 b Lorg/graalvm/compiler/nodes/ValueNode;
5 15 3 bCst Ljdk/vm/ci/meta/JavaConstant;
7 8 4 bValue J
10 11 4 bValue J
12 15 4 bValue J
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRule(value = "(And a (Add a b))")
MethodParameters:
Name Flags
a
b
public org.graalvm.compiler.core.match.ComplexMatchResult integerTestBranchMemory(org.graalvm.compiler.nodes.IfNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess, org.graalvm.compiler.nodes.ValueNode);
descriptor: (Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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 0
aload 1
aload 3
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitIntegerTestBranchMemory:(Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 1 root Lorg/graalvm/compiler/nodes/IfNode;
0 1 2 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
0 1 3 value Lorg/graalvm/compiler/nodes/ValueNode;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(If (IntegerTest Read=access value))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (IntegerTest FloatingRead=access value))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (IntegerTest VolatileRead=access value))")})
MethodParameters:
Name Flags
root
access
value
public org.graalvm.compiler.core.match.ComplexMatchResult ifCompareMemory(org.graalvm.compiler.nodes.IfNode, org.graalvm.compiler.nodes.calc.CompareNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/nodes/calc/CompareNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitCompareBranchMemory:(Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/nodes/calc/CompareNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 1 root Lorg/graalvm/compiler/nodes/IfNode;
0 1 2 compare Lorg/graalvm/compiler/nodes/calc/CompareNode;
0 1 3 value Lorg/graalvm/compiler/nodes/ValueNode;
0 1 4 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(If (IntegerEquals=compare value Read=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (IntegerLessThan=compare value Read=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (IntegerBelow=compare value Read=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (IntegerEquals=compare value FloatingRead=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (IntegerLessThan=compare value FloatingRead=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (IntegerBelow=compare value FloatingRead=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (IntegerEquals=compare value VolatileRead=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (IntegerLessThan=compare value VolatileRead=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (IntegerBelow=compare value VolatileRead=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (FloatEquals=compare value Read=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (FloatEquals=compare value FloatingRead=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (FloatEquals=compare value VolatileRead=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (FloatLessThan=compare value Read=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (FloatLessThan=compare value FloatingRead=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (FloatLessThan=compare value VolatileRead=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (PointerEquals=compare value Read=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (PointerEquals=compare value FloatingRead=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (PointerEquals=compare value VolatileRead=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (ObjectEquals=compare value Read=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (ObjectEquals=compare value FloatingRead=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (ObjectEquals=compare value VolatileRead=access))")})
MethodParameters:
Name Flags
root
compare
value
access
public org.graalvm.compiler.core.match.ComplexMatchResult ifCompareValueCas(org.graalvm.compiler.nodes.IfNode, org.graalvm.compiler.nodes.calc.CompareNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.java.ValueCompareAndSwapNode);
descriptor: (Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/nodes/calc/CompareNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/java/ValueCompareAndSwapNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.$assertionsDisabled:Z
ifne 1
aload 2
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.condition:()Lorg/graalvm/compiler/core/common/calc/CanonicalCondition;
getstatic org.graalvm.compiler.core.common.calc.CanonicalCondition.EQ:Lorg/graalvm/compiler/core/common/calc/CanonicalCondition;
if_acmpeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 3
aload 4
invokevirtual org.graalvm.compiler.nodes.java.ValueCompareAndSwapNode.getExpectedValue:()Lorg/graalvm/compiler/nodes/ValueNode;
if_acmpne 3
aload 4
invokevirtual org.graalvm.compiler.nodes.java.ValueCompareAndSwapNode.hasExactlyOneUsage:()Z
ifeq 3
2: aload 0
aload 4
aload 1
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/java/ValueCompareAndSwapNode;Lorg/graalvm/compiler/nodes/IfNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$7(Lorg/graalvm/compiler/nodes/java/ValueCompareAndSwapNode;Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
3: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 4 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/core/amd64/AMD64NodeMatchRules;
0 4 1 root Lorg/graalvm/compiler/nodes/IfNode;
0 4 2 compare Lorg/graalvm/compiler/nodes/calc/CompareNode;
0 4 3 value Lorg/graalvm/compiler/nodes/ValueNode;
0 4 4 cas Lorg/graalvm/compiler/nodes/java/ValueCompareAndSwapNode;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(If (ObjectEquals=compare value ValueCompareAndSwap=cas))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (PointerEquals=compare value ValueCompareAndSwap=cas))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (FloatEquals=compare value ValueCompareAndSwap=cas))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (IntegerEquals=compare value ValueCompareAndSwap=cas))")})
MethodParameters:
Name Flags
root
compare
value
cas
public org.graalvm.compiler.core.match.ComplexMatchResult ifCompareLogicCas(org.graalvm.compiler.nodes.IfNode, org.graalvm.compiler.nodes.calc.CompareNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.java.LogicCompareAndSwapNode);
descriptor: (Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/nodes/calc/CompareNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/java/LogicCompareAndSwapNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
astore 5
start local 5 1: getstatic org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.$assertionsDisabled:Z
ifne 2
aload 2
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.condition:()Lorg/graalvm/compiler/core/common/calc/CanonicalCondition;
getstatic org.graalvm.compiler.core.common.calc.CanonicalCondition.EQ:Lorg/graalvm/compiler/core/common/calc/CanonicalCondition;
if_acmpeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: jdk.vm.ci.meta.JavaConstant
StackMap stack:
aload 5
ifnull 12
aload 4
invokevirtual org.graalvm.compiler.nodes.java.LogicCompareAndSwapNode.hasExactlyOneUsage:()Z
ifeq 12
3: aload 5
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lstore 6
start local 6 4: lload 6
lconst_0
lcmp
ifne 7
5: iconst_0
istore 8
start local 8 6: goto 11
end local 8 StackMap locals: long
StackMap stack:
7: lload 6
lconst_1
lcmp
ifne 10
8: iconst_1
istore 8
start local 8 9: goto 11
end local 8 10: StackMap locals:
StackMap stack:
aconst_null
areturn
start local 8 11: StackMap locals: int
StackMap stack:
aload 0
aload 4
aload 1
iload 8
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/java/LogicCompareAndSwapNode;Lorg/graalvm/compiler/nodes/IfNode;Z)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$8(Lorg/graalvm/compiler/nodes/java/LogicCompareAndSwapNode;Lorg/graalvm/compiler/nodes/IfNode;ZLorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
end local 8 end local 6 12: StackMap locals:
StackMap stack:
aconst_null
areturn
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 13 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 13 1 root Lorg/graalvm/compiler/nodes/IfNode;
0 13 2 compare Lorg/graalvm/compiler/nodes/calc/CompareNode;
0 13 3 value Lorg/graalvm/compiler/nodes/ValueNode;
0 13 4 cas Lorg/graalvm/compiler/nodes/java/LogicCompareAndSwapNode;
1 13 5 constant Ljdk/vm/ci/meta/JavaConstant;
4 12 6 constantValue J
6 7 8 successIsTrue Z
9 10 8 successIsTrue Z
11 12 8 successIsTrue Z
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(If (ObjectEquals=compare value LogicCompareAndSwap=cas))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (PointerEquals=compare value LogicCompareAndSwap=cas))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (FloatEquals=compare value LogicCompareAndSwap=cas))"), org.graalvm.compiler.core.match.MatchRule(value = "(If (IntegerEquals=compare value LogicCompareAndSwap=cas))")})
MethodParameters:
Name Flags
root
compare
value
cas
public org.graalvm.compiler.core.match.ComplexMatchResult ifLogicCas(org.graalvm.compiler.nodes.IfNode, org.graalvm.compiler.nodes.calc.CompareNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/nodes/calc/CompareNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitCompareBranchMemory:(Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/nodes/calc/CompareNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 1 root Lorg/graalvm/compiler/nodes/IfNode;
0 1 2 compare Lorg/graalvm/compiler/nodes/calc/CompareNode;
0 1 3 value Lorg/graalvm/compiler/nodes/ValueNode;
0 1 4 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRule(value = "(If (ObjectEquals=compare value FloatingRead=access))")
MethodParameters:
Name Flags
root
compare
value
access
public org.graalvm.compiler.core.match.ComplexMatchResult rotateLeftConstant(org.graalvm.compiler.nodes.calc.LeftShiftNode, org.graalvm.compiler.nodes.calc.UnsignedRightShiftNode);
descriptor: (Lorg/graalvm/compiler/nodes/calc/LeftShiftNode;Lorg/graalvm/compiler/nodes/calc/UnsignedRightShiftNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.graalvm.compiler.nodes.calc.LeftShiftNode.getShiftAmountMask:()I
aload 1
invokevirtual org.graalvm.compiler.nodes.calc.LeftShiftNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
aload 2
invokevirtual org.graalvm.compiler.nodes.calc.UnsignedRightShiftNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
iadd
iand
ifne 2
1: aload 0
aload 1
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/calc/LeftShiftNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$9(Lorg/graalvm/compiler/nodes/calc/LeftShiftNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 3 1 lshift Lorg/graalvm/compiler/nodes/calc/LeftShiftNode;
0 3 2 rshift Lorg/graalvm/compiler/nodes/calc/UnsignedRightShiftNode;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRule(value = "(Or (LeftShift=lshift value Constant) (UnsignedRightShift=rshift value Constant))")
MethodParameters:
Name Flags
lshift
rshift
public org.graalvm.compiler.core.match.ComplexMatchResult rotateRightVariable(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ConstantNode, org.graalvm.compiler.nodes.ValueNode);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ConstantNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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 2
invokevirtual org.graalvm.compiler.nodes.ConstantNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lconst_0
lcmp
ifeq 1
aload 2
invokevirtual org.graalvm.compiler.nodes.ConstantNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
ldc 32
lcmp
ifne 2
1: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 3
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$10(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
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/core/amd64/AMD64NodeMatchRules;
0 3 1 value Lorg/graalvm/compiler/nodes/ValueNode;
0 3 2 delta Lorg/graalvm/compiler/nodes/ConstantNode;
0 3 3 shiftAmount Lorg/graalvm/compiler/nodes/ValueNode;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRule(value = "(Or (LeftShift value (Sub Constant=delta shiftAmount)) (UnsignedRightShift value shiftAmount))")
MethodParameters:
Name Flags
value
delta
shiftAmount
public org.graalvm.compiler.core.match.ComplexMatchResult rotateLeftVariable(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ConstantNode);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ConstantNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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 3
invokevirtual org.graalvm.compiler.nodes.ConstantNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lconst_0
lcmp
ifeq 1
aload 3
invokevirtual org.graalvm.compiler.nodes.ConstantNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
ldc 32
lcmp
ifne 2
1: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$11(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
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/core/amd64/AMD64NodeMatchRules;
0 3 1 value Lorg/graalvm/compiler/nodes/ValueNode;
0 3 2 shiftAmount Lorg/graalvm/compiler/nodes/ValueNode;
0 3 3 delta Lorg/graalvm/compiler/nodes/ConstantNode;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRule(value = "(Or (LeftShift value shiftAmount) (UnsignedRightShift value (Sub Constant=delta shiftAmount)))")
MethodParameters:
Name Flags
value
shiftAmount
delta
private org.graalvm.compiler.core.match.ComplexMatchResult binaryRead(org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp, org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
aload 4
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$12(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 1 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
0 1 2 size Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
0 1 3 value Lorg/graalvm/compiler/nodes/ValueNode;
0 1 4 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
MethodParameters:
Name Flags
op
size
value
access
private org.graalvm.compiler.core.match.ComplexMatchResult binaryRead(org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp, org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.$assertionsDisabled:Z
ifne 1
aload 2
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
if_acmpeq 1
aload 2
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.SD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
if_acmpeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
aload 4
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$13(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 2 1 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;
0 2 2 size Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
0 2 3 value Lorg/graalvm/compiler/nodes/ValueNode;
0 2 4 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
MethodParameters:
Name Flags
op
size
value
access
public org.graalvm.compiler.core.match.ComplexMatchResult addMemory(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getMemorySize:(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
astore 3
start local 3 1: aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.isXmmType:()Z
ifeq 7
2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.supportAVX:()Z
ifeq 6
3: aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
if_acmpne 4
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.VADDSS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;
goto 5
StackMap locals: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.memory.LIRLowerableAccess org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
StackMap stack: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules
4: getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.VADDSD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;
StackMap locals: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.memory.LIRLowerableAccess org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
StackMap stack: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp
5: aload 3
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.binaryRead:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
6: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.ADD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
aload 3
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.binaryRead:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
7: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.ADD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getRMOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
aload 3
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.binaryRead:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 8 1 value Lorg/graalvm/compiler/nodes/ValueNode;
0 8 2 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
1 8 3 size Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(Add value Read=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(Add value FloatingRead=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(Add value VolatileRead=access)")})
MethodParameters:
Name Flags
value
access
public org.graalvm.compiler.core.match.ComplexMatchResult subMemory(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getMemorySize:(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
astore 3
start local 3 1: aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.isXmmType:()Z
ifeq 7
2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.supportAVX:()Z
ifeq 6
3: aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
if_acmpne 4
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.VSUBSS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;
goto 5
StackMap locals: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.memory.LIRLowerableAccess org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
StackMap stack: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules
4: getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.VSUBSD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;
StackMap locals: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.memory.LIRLowerableAccess org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
StackMap stack: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp
5: aload 3
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.binaryRead:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
6: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.SUB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
aload 3
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.binaryRead:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
7: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.SUB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getRMOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
aload 3
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.binaryRead:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 8 1 value Lorg/graalvm/compiler/nodes/ValueNode;
0 8 2 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
1 8 3 size Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(Sub value Read=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(Sub value FloatingRead=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(Sub value VolatileRead=access)")})
MethodParameters:
Name Flags
value
access
public org.graalvm.compiler.core.match.ComplexMatchResult mulMemory(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getMemorySize:(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
astore 3
start local 3 1: aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.isXmmType:()Z
ifeq 7
2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.supportAVX:()Z
ifeq 6
3: aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
if_acmpne 4
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.VMULSS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;
goto 5
StackMap locals: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.memory.LIRLowerableAccess org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
StackMap stack: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules
4: getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.VMULSD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;
StackMap locals: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.memory.LIRLowerableAccess org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
StackMap stack: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp
5: aload 3
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.binaryRead:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
6: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.MUL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
aload 3
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.binaryRead:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
7: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.IMUL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
aload 3
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.binaryRead:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 8 1 value Lorg/graalvm/compiler/nodes/ValueNode;
0 8 2 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
1 8 3 size Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(Mul value Read=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(Mul value FloatingRead=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(Mul value VolatileRead=access)")})
MethodParameters:
Name Flags
value
access
public org.graalvm.compiler.core.match.ComplexMatchResult andMemory(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getMemorySize:(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
astore 3
start local 3 1: aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.isXmmType:()Z
ifeq 3
2: aconst_null
areturn
3: StackMap locals: org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.AND:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getRMOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
aload 3
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.binaryRead:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/amd64/AMD64NodeMatchRules;
0 4 1 value Lorg/graalvm/compiler/nodes/ValueNode;
0 4 2 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
1 4 3 size Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(And value Read=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(And value FloatingRead=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(And value VolatileRead=access)")})
MethodParameters:
Name Flags
value
access
public org.graalvm.compiler.core.match.ComplexMatchResult orMemory(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getMemorySize:(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
astore 3
start local 3 1: aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.isXmmType:()Z
ifeq 3
2: aconst_null
areturn
3: StackMap locals: org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.OR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getRMOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
aload 3
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.binaryRead:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/amd64/AMD64NodeMatchRules;
0 4 1 value Lorg/graalvm/compiler/nodes/ValueNode;
0 4 2 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
1 4 3 size Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(Or value Read=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(Or value FloatingRead=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(Or value VolatileRead=access)")})
MethodParameters:
Name Flags
value
access
public org.graalvm.compiler.core.match.ComplexMatchResult xorMemory(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getMemorySize:(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
astore 3
start local 3 1: aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.isXmmType:()Z
ifeq 3
2: aconst_null
areturn
3: StackMap locals: org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.XOR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getRMOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
aload 3
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.binaryRead:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/amd64/AMD64NodeMatchRules;
0 4 1 value Lorg/graalvm/compiler/nodes/ValueNode;
0 4 2 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
1 4 3 size Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(Xor value Read=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(Xor value FloatingRead=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(Xor value VolatileRead=access)")})
MethodParameters:
Name Flags
value
access
public org.graalvm.compiler.core.match.ComplexMatchResult writeNarrow(org.graalvm.compiler.nodes.memory.WriteNode, org.graalvm.compiler.nodes.calc.NarrowNode);
descriptor: (Lorg/graalvm/compiler/nodes/memory/WriteNode;Lorg/graalvm/compiler/nodes/calc/NarrowNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/memory/WriteNode;Lorg/graalvm/compiler/nodes/calc/NarrowNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$14(Lorg/graalvm/compiler/nodes/memory/WriteNode;Lorg/graalvm/compiler/nodes/calc/NarrowNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 1 root Lorg/graalvm/compiler/nodes/memory/WriteNode;
0 1 2 narrow Lorg/graalvm/compiler/nodes/calc/NarrowNode;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRule(value = "(Write object Narrow=narrow)")
MethodParameters:
Name Flags
root
narrow
public org.graalvm.compiler.core.match.ComplexMatchResult signExtend(org.graalvm.compiler.nodes.calc.SignExtendNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/calc/SignExtendNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
aload 1
invokevirtual org.graalvm.compiler.nodes.calc.SignExtendNode.getInputBits:()I
aload 1
invokevirtual org.graalvm.compiler.nodes.calc.SignExtendNode.getResultBits:()I
aconst_null
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitSignExtendMemory:(Lorg/graalvm/compiler/nodes/memory/Access;IILjdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 1 root Lorg/graalvm/compiler/nodes/calc/SignExtendNode;
0 1 2 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(SignExtend Read=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(SignExtend FloatingRead=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(SignExtend VolatileRead=access)")})
MethodParameters:
Name Flags
root
access
public org.graalvm.compiler.core.match.ComplexMatchResult zeroExtend(org.graalvm.compiler.nodes.calc.ZeroExtendNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/calc/ZeroExtendNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getMemoryKind:(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Ljdk/vm/ci/amd64/AMD64Kind;
astore 3
start local 3 1: aload 0
aload 3
aload 1
aload 2
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Ljdk/vm/ci/amd64/AMD64Kind;Lorg/graalvm/compiler/nodes/calc/ZeroExtendNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$15(Ljdk/vm/ci/amd64/AMD64Kind;Lorg/graalvm/compiler/nodes/calc/ZeroExtendNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 2 1 root Lorg/graalvm/compiler/nodes/calc/ZeroExtendNode;
0 2 2 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
1 2 3 memoryKind Ljdk/vm/ci/amd64/AMD64Kind;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(ZeroExtend Read=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(ZeroExtend FloatingRead=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(ZeroExtend VolatileRead=access)")})
MethodParameters:
Name Flags
root
access
public org.graalvm.compiler.core.match.ComplexMatchResult narrowRead(org.graalvm.compiler.nodes.calc.NarrowNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/calc/NarrowNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$2
dup
aload 0
aload 2
aload 1
invokespecial org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$2.<init>:(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/nodes/calc/NarrowNode;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 1 root Lorg/graalvm/compiler/nodes/calc/NarrowNode;
0 1 2 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(Narrow Read=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(Narrow FloatingRead=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(Narrow VolatileRead=access)")})
MethodParameters:
Name Flags
root
access
public org.graalvm.compiler.core.match.ComplexMatchResult signExtendNarrowRead(org.graalvm.compiler.nodes.calc.SignExtendNode, org.graalvm.compiler.nodes.calc.NarrowNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/calc/SignExtendNode;Lorg/graalvm/compiler/nodes/calc/NarrowNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRGeneratorTool:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
aload 2
getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
invokevirtual org.graalvm.compiler.nodes.calc.NarrowNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.getLIRKind:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 4
start local 4 1: aload 0
aload 3
aload 2
invokevirtual org.graalvm.compiler.nodes.calc.NarrowNode.getResultBits:()I
aload 1
invokevirtual org.graalvm.compiler.nodes.calc.SignExtendNode.getResultBits:()I
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitSignExtendMemory:(Lorg/graalvm/compiler/nodes/memory/Access;IILjdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 2 1 root Lorg/graalvm/compiler/nodes/calc/SignExtendNode;
0 2 2 narrow Lorg/graalvm/compiler/nodes/calc/NarrowNode;
0 2 3 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
1 2 4 kind Lorg/graalvm/compiler/core/common/LIRKind;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(SignExtend (Narrow=narrow Read=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(SignExtend (Narrow=narrow FloatingRead=access))"), org.graalvm.compiler.core.match.MatchRule(value = "(SignExtend (Narrow=narrow VolatileRead=access))")})
MethodParameters:
Name Flags
root
narrow
access
public org.graalvm.compiler.core.match.ComplexMatchResult floatConvert(org.graalvm.compiler.nodes.calc.FloatConvertNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/calc/FloatConvertNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.$SWITCH_TABLE$org$graalvm$compiler$core$common$calc$FloatConvert:()[I
aload 1
invokevirtual org.graalvm.compiler.nodes.calc.FloatConvertNode.getFloatConvert:()Lorg/graalvm/compiler/core/common/calc/FloatConvert;
invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
iaload
tableswitch { // 1 - 10
1: 5
2: 2
3: 6
4: 3
5: 8
6: 10
7: 1
8: 7
9: 9
10: 4
default: 11
}
1: StackMap locals:
StackMap stack:
aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.SINGLE:Ljdk/vm/ci/amd64/AMD64Kind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTSD2SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.SD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitConvertMemoryOp:(Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTTSD2SI:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitConvertMemoryOp:(Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
3: StackMap locals:
StackMap stack:
aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTTSD2SI:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitConvertMemoryOp:(Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
4: StackMap locals:
StackMap stack:
aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTSS2SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitConvertMemoryOp:(Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
5: StackMap locals:
StackMap stack:
aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTTSS2SI:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitConvertMemoryOp:(Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
6: StackMap locals:
StackMap stack:
aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTTSS2SI:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitConvertMemoryOp:(Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
7: StackMap locals:
StackMap stack:
aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTSI2SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitConvertMemoryOp:(Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
8: StackMap locals:
StackMap stack:
aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.SINGLE:Ljdk/vm/ci/amd64/AMD64Kind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTSI2SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitConvertMemoryOp:(Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
9: StackMap locals:
StackMap stack:
aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTSI2SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitConvertMemoryOp:(Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
10: StackMap locals:
StackMap stack:
aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.SINGLE:Ljdk/vm/ci/amd64/AMD64Kind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTSI2SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitConvertMemoryOp:(Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
areturn
11: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 12 1 root Lorg/graalvm/compiler/nodes/calc/FloatConvertNode;
0 12 2 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(FloatConvert Read=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(FloatConvert FloatingRead=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(FloatConvert VolatileRead=access)")})
MethodParameters:
Name Flags
root
access
public org.graalvm.compiler.core.match.ComplexMatchResult reinterpret(org.graalvm.compiler.nodes.calc.ReinterpretNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess);
descriptor: (Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$16(Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 1 root Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;
0 1 2 access Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRules(value = {org.graalvm.compiler.core.match.MatchRule(value = "(Reinterpret Read=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(Reinterpret FloatingRead=access)"), org.graalvm.compiler.core.match.MatchRule(value = "(Reinterpret VolatileRead=access)")})
MethodParameters:
Name Flags
root
access
public org.graalvm.compiler.core.match.ComplexMatchResult writeReinterpret(org.graalvm.compiler.nodes.memory.WriteNode, org.graalvm.compiler.nodes.calc.ReinterpretNode);
descriptor: (Lorg/graalvm/compiler/nodes/memory/WriteNode;Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
aload 1
invokedynamic evaluate(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;Lorg/graalvm/compiler/nodes/memory/WriteNode;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
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/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.lambda$17(Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;Lorg/graalvm/compiler/nodes/memory/WriteNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value; (7)
(Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 1 root Lorg/graalvm/compiler/nodes/memory/WriteNode;
0 1 2 reinterpret Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;
RuntimeVisibleAnnotations:
org.graalvm.compiler.core.match.MatchRule(value = "(Write object Reinterpret=reinterpret)")
MethodParameters:
Name Flags
root
reinterpret
public org.graalvm.compiler.core.amd64.AMD64LIRGenerator getLIRGeneratorTool();
descriptor: ()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.gen:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
checkcast org.graalvm.compiler.core.amd64.AMD64LIRGenerator
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
protected org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator getArithmeticLIRGenerator();
descriptor: ()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRGeneratorTool:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.getArithmetic:()Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGeneratorTool;
checkcast org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
public org.graalvm.compiler.lir.gen.LIRGeneratorTool getLIRGeneratorTool();
descriptor: ()Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRGeneratorTool:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
areturn
LocalVariableTable:
Start End Slot Name Signature
static int[] $SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic jdk.vm.ci.amd64.AMD64Kind.values:()[Ljdk/vm/ci/amd64/AMD64Kind;
arraylength
newarray 10
astore 0
2: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.BYTE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iconst_1
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 6
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iconst_3
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.MASK16:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 31
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.MASK32:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 32
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.MASK64:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 33
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.MASK8:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 30
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iconst_4
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.SINGLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iconst_5
iastore
27: goto 29
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
28: pop
StackMap locals:
StackMap stack:
29: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V128_BYTE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 12
iastore
30: goto 32
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
31: pop
StackMap locals:
StackMap stack:
32: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V128_DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 17
iastore
33: goto 35
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
34: pop
StackMap locals:
StackMap stack:
35: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V128_DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 14
iastore
36: goto 38
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
37: pop
StackMap locals:
StackMap stack:
38: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V128_QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 15
iastore
39: goto 41
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
40: pop
StackMap locals:
StackMap stack:
41: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V128_SINGLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 16
iastore
42: goto 44
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
43: pop
StackMap locals:
StackMap stack:
44: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V128_WORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 13
iastore
45: goto 47
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
46: pop
StackMap locals:
StackMap stack:
47: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V256_BYTE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 18
iastore
48: goto 50
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
49: pop
StackMap locals:
StackMap stack:
50: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V256_DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 23
iastore
51: goto 53
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
52: pop
StackMap locals:
StackMap stack:
53: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V256_DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 20
iastore
54: goto 56
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
55: pop
StackMap locals:
StackMap stack:
56: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V256_QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 21
iastore
57: goto 59
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
58: pop
StackMap locals:
StackMap stack:
59: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V256_SINGLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 22
iastore
60: goto 62
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
61: pop
StackMap locals:
StackMap stack:
62: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V256_WORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 19
iastore
63: goto 65
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
64: pop
StackMap locals:
StackMap stack:
65: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V32_BYTE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 7
iastore
66: goto 68
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
67: pop
StackMap locals:
StackMap stack:
68: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V32_WORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 8
iastore
69: goto 71
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
70: pop
StackMap locals:
StackMap stack:
71: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V512_BYTE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 24
iastore
72: goto 74
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
73: pop
StackMap locals:
StackMap stack:
74: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V512_DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 29
iastore
75: goto 77
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
76: pop
StackMap locals:
StackMap stack:
77: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V512_DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 26
iastore
78: goto 80
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
79: pop
StackMap locals:
StackMap stack:
80: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V512_QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 27
iastore
81: goto 83
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
82: pop
StackMap locals:
StackMap stack:
83: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V512_SINGLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 28
iastore
84: goto 86
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
85: pop
StackMap locals:
StackMap stack:
86: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V512_WORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 25
iastore
87: goto 89
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
88: pop
StackMap locals:
StackMap stack:
89: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V64_BYTE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 9
iastore
90: goto 92
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
91: pop
StackMap locals:
StackMap stack:
92: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V64_DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 11
iastore
93: goto 95
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
94: pop
StackMap locals:
StackMap stack:
95: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.V64_WORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
bipush 10
iastore
96: goto 98
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
97: pop
StackMap locals:
StackMap stack:
98: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.WORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iconst_2
iastore
99: goto 101
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
100: pop
StackMap locals:
StackMap stack:
101: aload 0
dup
putstatic org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
23 24 25 Class java.lang.NoSuchFieldError
26 27 28 Class java.lang.NoSuchFieldError
29 30 31 Class java.lang.NoSuchFieldError
32 33 34 Class java.lang.NoSuchFieldError
35 36 37 Class java.lang.NoSuchFieldError
38 39 40 Class java.lang.NoSuchFieldError
41 42 43 Class java.lang.NoSuchFieldError
44 45 46 Class java.lang.NoSuchFieldError
47 48 49 Class java.lang.NoSuchFieldError
50 51 52 Class java.lang.NoSuchFieldError
53 54 55 Class java.lang.NoSuchFieldError
56 57 58 Class java.lang.NoSuchFieldError
59 60 61 Class java.lang.NoSuchFieldError
62 63 64 Class java.lang.NoSuchFieldError
65 66 67 Class java.lang.NoSuchFieldError
68 69 70 Class java.lang.NoSuchFieldError
71 72 73 Class java.lang.NoSuchFieldError
74 75 76 Class java.lang.NoSuchFieldError
77 78 79 Class java.lang.NoSuchFieldError
80 81 82 Class java.lang.NoSuchFieldError
83 84 85 Class java.lang.NoSuchFieldError
86 87 88 Class java.lang.NoSuchFieldError
89 90 91 Class java.lang.NoSuchFieldError
92 93 94 Class java.lang.NoSuchFieldError
95 96 97 Class java.lang.NoSuchFieldError
98 99 100 Class java.lang.NoSuchFieldError
static org.graalvm.compiler.lir.LabelRef access$2(org.graalvm.compiler.core.amd64.AMD64NodeMatchRules, org.graalvm.compiler.nodes.FixedNode);
descriptor: (Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/lir/LabelRef;
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRBlock:(Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/lir/LabelRef;
areturn
LocalVariableTable:
Start End Slot Name Signature
static jdk.vm.ci.meta.Value access$3(org.graalvm.compiler.core.amd64.AMD64NodeMatchRules, org.graalvm.compiler.graph.Node);
descriptor: (Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
areturn
LocalVariableTable:
Start End Slot Name Signature
static int[] $SWITCH_TABLE$org$graalvm$compiler$core$common$calc$FloatConvert();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.$SWITCH_TABLE$org$graalvm$compiler$core$common$calc$FloatConvert:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.graalvm.compiler.core.common.calc.FloatConvert.values:()[Lorg/graalvm/compiler/core/common/calc/FloatConvert;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.graalvm.compiler.core.common.calc.FloatConvert.D2F:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
bipush 7
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic org.graalvm.compiler.core.common.calc.FloatConvert.D2I:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
iconst_2
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic org.graalvm.compiler.core.common.calc.FloatConvert.D2L:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
iconst_4
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic org.graalvm.compiler.core.common.calc.FloatConvert.F2D:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
bipush 10
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic org.graalvm.compiler.core.common.calc.FloatConvert.F2I:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
iconst_1
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic org.graalvm.compiler.core.common.calc.FloatConvert.F2L:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
iconst_3
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic org.graalvm.compiler.core.common.calc.FloatConvert.I2D:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
bipush 8
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic org.graalvm.compiler.core.common.calc.FloatConvert.I2F:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
iconst_5
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
getstatic org.graalvm.compiler.core.common.calc.FloatConvert.L2D:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
bipush 9
iastore
27: goto 29
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
28: pop
StackMap locals:
StackMap stack:
29: aload 0
getstatic org.graalvm.compiler.core.common.calc.FloatConvert.L2F:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
bipush 6
iastore
30: goto 32
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
31: pop
StackMap locals:
StackMap stack:
32: aload 0
dup
putstatic org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.$SWITCH_TABLE$org$graalvm$compiler$core$common$calc$FloatConvert:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
23 24 25 Class java.lang.NoSuchFieldError
26 27 28 Class java.lang.NoSuchFieldError
29 30 31 Class java.lang.NoSuchFieldError
private jdk.vm.ci.meta.Value lambda$0(org.graalvm.compiler.nodes.memory.LIRLowerableAccess, org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize, jdk.vm.ci.meta.JavaConstant, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef, double, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Ljdk/vm/ci/meta/JavaConstant;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;DLorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=9, locals=10, args_size=8
start local 0 start local 8 0: aload 0
aload 1
invokeinterface org.graalvm.compiler.nodes.memory.LIRLowerableAccess.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
checkcast org.graalvm.compiler.lir.amd64.AMD64AddressValue
astore 9
start local 9 1: aload 0
getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.gen:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryConstOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MIOp.TEST:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;
aload 2
aload 9
aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
l2i
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getState:(Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/lir/LIRFrameState;
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryConstOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;ILorg/graalvm/compiler/lir/LIRFrameState;)V
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 0
getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.gen:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp
dup
getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
aload 4
aload 5
dload 6
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp.<init>:(Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: aconst_null
areturn
end local 9 end local 8 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 4 8 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
1 4 9 address Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
private jdk.vm.ci.meta.Value lambda$1(org.graalvm.compiler.nodes.memory.LIRLowerableAccess, org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef, double, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;DLorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=9, locals=10, args_size=8
start local 0 start local 8 0: aload 0
aload 1
invokeinterface org.graalvm.compiler.nodes.memory.LIRLowerableAccess.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
checkcast org.graalvm.compiler.lir.amd64.AMD64AddressValue
astore 9
start local 9 1: aload 0
getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.gen:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryRMOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.TEST:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
aload 2
aload 0
getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.gen:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
aload 0
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 9
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getState:(Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/lir/LIRFrameState;
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryRMOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 0
getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.gen:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp
dup
getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
aload 4
aload 5
dload 6
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp.<init>:(Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: aconst_null
areturn
end local 9 end local 8 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 4 8 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
1 4 9 address Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
private jdk.vm.ci.meta.Value lambda$2(org.graalvm.compiler.nodes.memory.Access, jdk.vm.ci.meta.ValueKind, jdk.vm.ci.meta.PlatformKind, org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp, org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/nodes/memory/Access;Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=9, args_size=7
start local 0 start local 6 0: aload 0
aload 1
invokeinterface org.graalvm.compiler.nodes.memory.Access.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
checkcast org.graalvm.compiler.lir.amd64.AMD64AddressValue
astore 7
start local 7 1: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getState:(Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/lir/LIRFrameState;
astore 8
start local 8 2: aload 2
ifnull 4
3: aload 7
aload 2
invokevirtual org.graalvm.compiler.lir.amd64.AMD64AddressValue.withKind:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
astore 7
4: StackMap locals: org.graalvm.compiler.lir.amd64.AMD64AddressValue org.graalvm.compiler.lir.LIRFrameState
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
aload 3
aload 4
aload 5
aload 7
aload 8
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertMemoryOp:(Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
areturn
end local 8 end local 7 end local 6 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 5 6 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
1 5 7 address Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
2 5 8 state Lorg/graalvm/compiler/lir/LIRFrameState;
private jdk.vm.ci.meta.Value lambda$3(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 3 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitLogicalAndNot:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
areturn
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 3 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
private jdk.vm.ci.meta.Value lambda$4(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 2 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitLowestSetIsolatedBit:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
areturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 2 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
private jdk.vm.ci.meta.Value lambda$5(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 2 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitGetMaskUpToLowestSetBit:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
areturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 2 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
private jdk.vm.ci.meta.Value lambda$6(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 2 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitResetLowestSetBit:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
areturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 2 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
private jdk.vm.ci.meta.Value lambda$7(org.graalvm.compiler.nodes.java.ValueCompareAndSwapNode, org.graalvm.compiler.nodes.IfNode, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/nodes/java/ValueCompareAndSwapNode;Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=12, args_size=4
start local 0 start local 3 0: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLirKind:(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 4
start local 4 1: aload 0
aload 2
invokevirtual org.graalvm.compiler.nodes.IfNode.trueSuccessor:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRBlock:(Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/lir/LabelRef;
astore 5
start local 5 2: aload 0
aload 2
invokevirtual org.graalvm.compiler.nodes.IfNode.falseSuccessor:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRBlock:(Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/lir/LabelRef;
astore 6
start local 6 3: aload 2
aload 2
invokevirtual org.graalvm.compiler.nodes.IfNode.trueSuccessor:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.nodes.IfNode.probability:(Lorg/graalvm/compiler/nodes/AbstractBeginNode;)D
dstore 7
start local 7 4: aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.java.ValueCompareAndSwapNode.getExpectedValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
astore 9
start local 9 5: aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.java.ValueCompareAndSwapNode.getNewValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
astore 10
start local 10 6: aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.java.ValueCompareAndSwapNode.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
checkcast org.graalvm.compiler.lir.amd64.AMD64AddressValue
astore 11
start local 11 7: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRGeneratorTool:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
aload 4
aload 11
aload 9
aload 10
getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
aload 5
aload 6
dload 7
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitCompareAndSwapBranch:(Ljdk/vm/ci/meta/ValueKind;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
8: aconst_null
areturn
end local 11 end local 10 end local 9 end local 7 end local 6 end local 5 end local 4 end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 9 3 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
1 9 4 kind Lorg/graalvm/compiler/core/common/LIRKind;
2 9 5 trueLabel Lorg/graalvm/compiler/lir/LabelRef;
3 9 6 falseLabel Lorg/graalvm/compiler/lir/LabelRef;
4 9 7 trueLabelProbability D
5 9 9 expectedValue Ljdk/vm/ci/meta/Value;
6 9 10 newValue Ljdk/vm/ci/meta/Value;
7 9 11 address Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
private jdk.vm.ci.meta.Value lambda$8(org.graalvm.compiler.nodes.java.LogicCompareAndSwapNode, org.graalvm.compiler.nodes.IfNode, boolean, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/nodes/java/LogicCompareAndSwapNode;Lorg/graalvm/compiler/nodes/IfNode;ZLorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=14, args_size=5
start local 0 start local 4 0: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLirKind:(Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 5
start local 5 1: aload 0
aload 2
invokevirtual org.graalvm.compiler.nodes.IfNode.trueSuccessor:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRBlock:(Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/lir/LabelRef;
astore 6
start local 6 2: aload 0
aload 2
invokevirtual org.graalvm.compiler.nodes.IfNode.falseSuccessor:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRBlock:(Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/lir/LabelRef;
astore 7
start local 7 3: aload 2
aload 2
invokevirtual org.graalvm.compiler.nodes.IfNode.trueSuccessor:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.nodes.IfNode.probability:(Lorg/graalvm/compiler/nodes/AbstractBeginNode;)D
dstore 8
start local 8 4: aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.java.LogicCompareAndSwapNode.getExpectedValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
astore 10
start local 10 5: aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.java.LogicCompareAndSwapNode.getNewValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
astore 11
start local 11 6: aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.java.LogicCompareAndSwapNode.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
checkcast org.graalvm.compiler.lir.amd64.AMD64AddressValue
astore 12
start local 12 7: iload 3
ifeq 8
getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
goto 9
StackMap locals: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules org.graalvm.compiler.nodes.java.LogicCompareAndSwapNode org.graalvm.compiler.nodes.IfNode int org.graalvm.compiler.core.gen.NodeLIRBuilder org.graalvm.compiler.core.common.LIRKind org.graalvm.compiler.lir.LabelRef org.graalvm.compiler.lir.LabelRef double jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value org.graalvm.compiler.lir.amd64.AMD64AddressValue
StackMap stack:
8: getstatic org.graalvm.compiler.core.common.calc.Condition.NE:Lorg/graalvm/compiler/core/common/calc/Condition;
StackMap locals:
StackMap stack: org.graalvm.compiler.core.common.calc.Condition
9: astore 13
start local 13 10: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRGeneratorTool:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
aload 5
aload 12
aload 10
aload 11
aload 13
aload 6
aload 7
dload 8
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitCompareAndSwapBranch:(Ljdk/vm/ci/meta/ValueKind;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
11: aconst_null
areturn
end local 13 end local 12 end local 11 end local 10 end local 8 end local 7 end local 6 end local 5 end local 4 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 12 4 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
1 12 5 kind Lorg/graalvm/compiler/core/common/LIRKind;
2 12 6 trueLabel Lorg/graalvm/compiler/lir/LabelRef;
3 12 7 falseLabel Lorg/graalvm/compiler/lir/LabelRef;
4 12 8 trueLabelProbability D
5 12 10 expectedValue Ljdk/vm/ci/meta/Value;
6 12 11 newValue Ljdk/vm/ci/meta/Value;
7 12 12 address Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
10 12 13 condition Lorg/graalvm/compiler/core/common/calc/Condition;
private jdk.vm.ci.meta.Value lambda$9(org.graalvm.compiler.nodes.calc.LeftShiftNode, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/nodes/calc/LeftShiftNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 2 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.calc.LeftShiftNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.calc.LeftShiftNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitRol:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 2 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
private jdk.vm.ci.meta.Value lambda$10(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 3 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitRor:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 3 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
private jdk.vm.ci.meta.Value lambda$11(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 3 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitRol:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 3 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
private jdk.vm.ci.meta.Value lambda$12(org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp, org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=6, args_size=6
start local 0 start local 5 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
aload 1
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRGeneratorTool:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
aload 0
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 0
aload 4
invokeinterface org.graalvm.compiler.nodes.memory.LIRLowerableAccess.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
checkcast org.graalvm.compiler.lir.amd64.AMD64AddressValue
1: aload 0
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getState:(Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/lir/LIRFrameState;
2: invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinaryMemory:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
3: areturn
end local 5 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 4 5 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
private jdk.vm.ci.meta.Value lambda$13(org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp, org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=6, args_size=6
start local 0 start local 5 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
aload 1
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRGeneratorTool:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
aload 0
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 0
aload 4
invokeinterface org.graalvm.compiler.nodes.memory.LIRLowerableAccess.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
checkcast org.graalvm.compiler.lir.amd64.AMD64AddressValue
1: aload 0
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getState:(Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/lir/LIRFrameState;
2: invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinaryMemory:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
3: areturn
end local 5 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 4 5 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
private jdk.vm.ci.meta.Value lambda$14(org.graalvm.compiler.nodes.memory.WriteNode, org.graalvm.compiler.nodes.calc.NarrowNode, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/nodes/memory/WriteNode;Lorg/graalvm/compiler/nodes/calc/NarrowNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=5, args_size=4
start local 0 start local 3 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRGeneratorTool:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.nodes.memory.WriteNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.getLIRKind:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 4
start local 4 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
aload 4
aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.memory.WriteNode.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
aload 0
aload 2
invokevirtual org.graalvm.compiler.nodes.calc.NarrowNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.state:(Lorg/graalvm/compiler/nodes/DeoptimizingNode;)Lorg/graalvm/compiler/lir/LIRFrameState;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitStore:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
2: aconst_null
areturn
end local 4 end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 3 3 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
1 3 4 writeKind Lorg/graalvm/compiler/core/common/LIRKind;
private jdk.vm.ci.meta.Value lambda$15(jdk.vm.ci.amd64.AMD64Kind, org.graalvm.compiler.nodes.calc.ZeroExtendNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Ljdk/vm/ci/amd64/AMD64Kind;Lorg/graalvm/compiler/nodes/calc/ZeroExtendNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=5, args_size=5
start local 0 start local 4 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
aload 1
aload 2
invokevirtual org.graalvm.compiler.nodes.calc.ZeroExtendNode.getResultBits:()I
aload 0
aload 3
invokeinterface org.graalvm.compiler.nodes.memory.LIRLowerableAccess.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
checkcast org.graalvm.compiler.lir.amd64.AMD64AddressValue
aload 0
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getState:(Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/lir/LIRFrameState;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitZeroExtendMemory:(Ljdk/vm/ci/amd64/AMD64Kind;ILorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
areturn
end local 4 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 1 4 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
private jdk.vm.ci.meta.Value lambda$16(org.graalvm.compiler.nodes.calc.ReinterpretNode, org.graalvm.compiler.nodes.memory.LIRLowerableAccess, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;Lorg/graalvm/compiler/nodes/memory/LIRLowerableAccess;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=5, args_size=4
start local 0 start local 3 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRGeneratorTool:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
aload 1
getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
invokevirtual org.graalvm.compiler.nodes.calc.ReinterpretNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.getLIRKind:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 4
start local 4 1: aload 0
aload 4
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitReinterpretMemory:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/nodes/memory/Access;)Ljdk/vm/ci/meta/Value;
areturn
end local 4 end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 2 3 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
1 2 4 kind Lorg/graalvm/compiler/core/common/LIRKind;
private jdk.vm.ci.meta.Value lambda$17(org.graalvm.compiler.nodes.calc.ReinterpretNode, org.graalvm.compiler.nodes.memory.WriteNode, org.graalvm.compiler.core.gen.NodeLIRBuilder);
descriptor: (Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;Lorg/graalvm/compiler/nodes/memory/WriteNode;Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=7, args_size=4
start local 0 start local 3 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRGeneratorTool:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.nodes.calc.ReinterpretNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.getLIRKind:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 4
start local 4 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRGeneratorTool:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.calc.ReinterpretNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
astore 5
start local 5 2: aload 0
aload 2
invokevirtual org.graalvm.compiler.nodes.memory.WriteNode.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
checkcast org.graalvm.compiler.lir.amd64.AMD64AddressValue
astore 6
start local 6 3: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getArithmeticLIRGenerator:()Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
aload 4
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
aload 6
aload 5
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getState:(Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/lir/LIRFrameState;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitStore:(Ljdk/vm/ci/amd64/AMD64Kind;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
4: aconst_null
areturn
end local 6 end local 5 end local 4 end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
0 5 3 builder Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
1 5 4 kind Lorg/graalvm/compiler/core/common/LIRKind;
2 5 5 value Ljdk/vm/ci/meta/AllocatableValue;
3 5 6 address Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
}
SourceFile: "AMD64NodeMatchRules.java"
NestMembers:
org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1 org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$2
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public final CPUFeature = jdk.vm.ci.amd64.AMD64$CPUFeature of jdk.vm.ci.amd64.AMD64
public final AMD64BinaryArithmetic = org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic of org.graalvm.compiler.asm.amd64.AMD64Assembler
public AMD64MIOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MIOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
public AMD64RMOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
public SSEOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
public VexRVMOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
public OperandSize = org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize of org.graalvm.compiler.asm.amd64.AMD64BaseAssembler
org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1
org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$2
public MemoryConstOp = org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryConstOp of org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer
public MemoryRMOp = org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryRMOp of org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer
public BranchOp = org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp of org.graalvm.compiler.lir.amd64.AMD64ControlFlow