public class org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator extends org.graalvm.compiler.lir.gen.ArithmeticLIRGenerator implements org.graalvm.compiler.lir.amd64.AMD64ArithmeticLIRGeneratorTool
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator
super_class: org.graalvm.compiler.lir.gen.ArithmeticLIRGenerator
{
private static final jdk.vm.ci.code.RegisterValue RCX_I;
descriptor: Ljdk/vm/ci/code/RegisterValue;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, 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 final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
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.AMD64ArithmeticLIRGenerator.$assertionsDisabled:Z
3: getstatic jdk.vm.ci.amd64.AMD64.rcx:Ljdk/vm/ci/code/Register;
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
putstatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.RCX_I:Ljdk/vm/ci/code/RegisterValue;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.graalvm.compiler.lir.gen.ArithmeticLIRGenerator.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
public org.graalvm.compiler.lir.Variable emitNegate(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
astore 2
start local 2 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 3
start local 3 2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
astore 4
start local 4 3: aload 4
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;
getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
istore 5
start local 5 4: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 2
invokevirtual jdk.vm.ci.meta.AllocatableValue.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 6
3: 5
4: 7
5: 9
6: 14
default: 19
}
5: StackMap locals: org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator jdk.vm.ci.meta.Value jdk.vm.ci.meta.AllocatableValue org.graalvm.compiler.lir.Variable jdk.vm.ci.code.TargetDescription int
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp.NEG:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 3
aload 2
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: goto 20
7: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp.NEG:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 3
aload 2
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
8: goto 20
9: StackMap locals:
StackMap stack:
iload 5
ifeq 12
10: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$DataThreeOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.XOR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 3
aload 2
ldc -2147483648
invokestatic java.lang.Float.intBitsToFloat:(I)F
invokestatic jdk.vm.ci.meta.JavaConstant.forFloat:(F)Ljdk/vm/ci/meta/PrimitiveConstant;
bipush 16
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$DataThreeOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;I)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
11: goto 20
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$DataTwoOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.XOR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 3
aload 2
ldc -2147483648
invokestatic java.lang.Float.intBitsToFloat:(I)F
invokestatic jdk.vm.ci.meta.JavaConstant.forFloat:(F)Ljdk/vm/ci/meta/PrimitiveConstant;
bipush 16
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$DataTwoOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;I)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
13: goto 20
14: StackMap locals:
StackMap stack:
iload 5
ifeq 17
15: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$DataThreeOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.XOR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 3
aload 2
ldc -9223372036854775808
invokestatic java.lang.Double.longBitsToDouble:(J)D
invokestatic jdk.vm.ci.meta.JavaConstant.forDouble:(D)Ljdk/vm/ci/meta/PrimitiveConstant;
bipush 16
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$DataThreeOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;I)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
16: goto 20
17: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$DataTwoOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.XOR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 3
aload 2
ldc -9223372036854775808
invokestatic java.lang.Double.longBitsToDouble:(J)D
invokestatic jdk.vm.ci.meta.JavaConstant.forDouble:(D)Ljdk/vm/ci/meta/PrimitiveConstant;
bipush 16
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$DataTwoOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;I)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
18: goto 20
19: StackMap locals:
StackMap stack:
aload 2
invokevirtual jdk.vm.ci.meta.AllocatableValue.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
20: StackMap locals:
StackMap stack:
aload 3
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 21 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 21 1 inputVal Ljdk/vm/ci/meta/Value;
1 21 2 input Ljdk/vm/ci/meta/AllocatableValue;
2 21 3 result Lorg/graalvm/compiler/lir/Variable;
3 21 4 target Ljdk/vm/ci/code/TargetDescription;
4 21 5 isAvx Z
MethodParameters:
Name Flags
inputVal
public org.graalvm.compiler.lir.Variable emitNot(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
astore 2
start local 2 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 3
start local 3 2: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 2
invokevirtual jdk.vm.ci.meta.AllocatableValue.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 4
3: 3
4: 5
default: 7
}
3: StackMap locals: jdk.vm.ci.meta.AllocatableValue org.graalvm.compiler.lir.Variable
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp.NOT:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 3
aload 2
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
4: goto 8
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp.NOT:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 3
aload 2
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: goto 8
7: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
8: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 9 1 inputVal Ljdk/vm/ci/meta/Value;
1 9 2 input Ljdk/vm/ci/meta/AllocatableValue;
2 9 3 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
inputVal
private org.graalvm.compiler.lir.Variable emitBinary(org.graalvm.compiler.core.common.LIRKind, org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, boolean, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=8, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 6
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 2
1: aload 0
aload 1
aload 2
aload 3
iload 4
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 5
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 6
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asConstantValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/ConstantValue;
iload 7
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinaryConst:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/ConstantValue;Z)Lorg/graalvm/compiler/lir/Variable;
areturn
2: StackMap locals:
StackMap stack:
iload 4
ifeq 4
aload 5
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 4
3: aload 0
aload 1
aload 2
aload 3
iload 4
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 6
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 5
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asConstantValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/ConstantValue;
iload 7
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinaryConst:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/ConstantValue;Z)Lorg/graalvm/compiler/lir/Variable;
areturn
4: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getRMOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
aload 3
iload 4
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 5
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 6
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinaryVar:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/Variable;
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 5 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 5 1 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
0 5 2 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
0 5 3 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 5 4 commutative Z
0 5 5 a Ljdk/vm/ci/meta/Value;
0 5 6 b Ljdk/vm/ci/meta/Value;
0 5 7 setFlags Z
MethodParameters:
Name Flags
resultKind
op
size
commutative
a
b
setFlags
private org.graalvm.compiler.lir.Variable emitBinary(org.graalvm.compiler.core.common.LIRKind, org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, boolean, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 6
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 2
1: aload 0
aload 1
aload 2
aload 3
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 5
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 6
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinaryConst:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/lir/Variable;
areturn
2: StackMap locals:
StackMap stack:
iload 4
ifeq 4
aload 5
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 4
3: aload 0
aload 1
aload 2
aload 3
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 6
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 5
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinaryConst:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/lir/Variable;
areturn
4: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
iload 4
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 5
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 6
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinaryVar:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/Variable;
areturn
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 5 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 5 1 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
0 5 2 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
0 5 3 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 5 4 commutative Z
0 5 5 a Ljdk/vm/ci/meta/Value;
0 5 6 b Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
resultKind
op
size
commutative
a
b
private org.graalvm.compiler.lir.Variable emitBinary(org.graalvm.compiler.core.common.LIRKind, org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RRMOp, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, boolean, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 6
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 2
1: aload 0
aload 1
aload 2
aload 3
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 5
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 6
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinaryConst:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/lir/Variable;
areturn
2: StackMap locals:
StackMap stack:
iload 4
ifeq 4
aload 5
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 4
3: aload 0
aload 1
aload 2
aload 3
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 6
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 5
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinaryConst:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/lir/Variable;
areturn
4: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
iload 4
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 5
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 6
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinaryVar:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/Variable;
areturn
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 5 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 5 1 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
0 5 2 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;
0 5 3 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 5 4 commutative Z
0 5 5 a Ljdk/vm/ci/meta/Value;
0 5 6 b Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
resultKind
op
size
commutative
a
b
private org.graalvm.compiler.lir.Variable emitBinaryConst(org.graalvm.compiler.core.common.LIRKind, org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, boolean, jdk.vm.ci.meta.AllocatableValue, org.graalvm.compiler.lir.ConstantValue, boolean);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/ConstantValue;Z)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=13, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 6
invokevirtual org.graalvm.compiler.lir.ConstantValue.getJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lstore 8
start local 8 1: lload 8
invokestatic org.graalvm.compiler.core.common.NumUtil.isInt:(J)Z
ifeq 11
2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 10
start local 10 3: lload 8
l2i
istore 11
start local 11 4: iload 7
ifne 9
5: aload 2
iload 11
invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getMOp:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;I)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
astore 12
start local 12 6: aload 12
ifnull 9
7: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MOp
dup
aload 12
aload 3
aload 10
aload 5
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
8: aload 10
areturn
end local 12 9: StackMap locals: long org.graalvm.compiler.lir.Variable int
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$ConstOp
dup
aload 2
aload 3
aload 10
aload 5
iload 11
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$ConstOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;I)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
10: aload 10
areturn
end local 11 end local 10 11: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getRMOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
aload 3
iload 4
aload 5
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 6
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinaryVar:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/Variable;
areturn
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 12 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 12 1 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
0 12 2 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
0 12 3 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 12 4 commutative Z
0 12 5 a Ljdk/vm/ci/meta/AllocatableValue;
0 12 6 b Lorg/graalvm/compiler/lir/ConstantValue;
0 12 7 setFlags Z
1 12 8 value J
3 11 10 result Lorg/graalvm/compiler/lir/Variable;
4 11 11 constant I
6 9 12 mop Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
MethodParameters:
Name Flags
resultKind
op
size
commutative
a
b
setFlags
private static org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp getMOp(org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic, int);
descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;I)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iconst_1
if_icmpne 5
1: aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.ADD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 3
2: getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp.INC:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
areturn
3: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.SUB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 10
4: getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp.DEC:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
areturn
5: StackMap locals:
StackMap stack:
iload 1
iconst_m1
if_icmpne 10
6: aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.ADD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 8
7: getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp.DEC:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
areturn
8: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.SUB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 10
9: getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp.INC:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
areturn
10: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
0 11 1 constant I
MethodParameters:
Name Flags
op
constant
private org.graalvm.compiler.lir.Variable emitBinaryConst(org.graalvm.compiler.core.common.LIRKind, org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.JavaConstant);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 6
start local 6 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$DataTwoOp
dup
aload 2
aload 3
aload 6
aload 4
aload 5
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$DataTwoOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 6
areturn
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 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 3 1 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
0 3 2 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
0 3 3 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 3 4 a Ljdk/vm/ci/meta/AllocatableValue;
0 3 5 b Ljdk/vm/ci/meta/JavaConstant;
1 3 6 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
resultKind
op
size
a
b
private org.graalvm.compiler.lir.Variable emitBinaryConst(org.graalvm.compiler.core.common.LIRKind, org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RRMOp, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.JavaConstant);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 6
start local 6 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$DataThreeOp
dup
aload 2
aload 3
aload 6
aload 4
aload 5
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$DataThreeOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 6
areturn
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 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 3 1 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
0 3 2 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;
0 3 3 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 3 4 a Ljdk/vm/ci/meta/AllocatableValue;
0 3 5 b Ljdk/vm/ci/meta/JavaConstant;
1 3 6 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
resultKind
op
size
a
b
private org.graalvm.compiler.lir.Variable emitBinaryVar(org.graalvm.compiler.core.common.LIRKind, org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, boolean, jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.AllocatableValue);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=8, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 7
start local 7 1: iload 4
ifeq 4
2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$CommutativeTwoOp
dup
aload 2
aload 3
aload 7
aload 5
aload 6
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$CommutativeTwoOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: goto 5
4: StackMap locals: org.graalvm.compiler.lir.Variable
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$TwoOp
dup
aload 2
aload 3
aload 7
aload 5
aload 6
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$TwoOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
5: StackMap locals:
StackMap stack:
aload 7
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 6 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 6 1 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
0 6 2 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
0 6 3 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 6 4 commutative Z
0 6 5 a Ljdk/vm/ci/meta/AllocatableValue;
0 6 6 b Ljdk/vm/ci/meta/AllocatableValue;
1 6 7 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
resultKind
op
size
commutative
a
b
private org.graalvm.compiler.lir.Variable emitBinaryVar(org.graalvm.compiler.core.common.LIRKind, org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RRMOp, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, boolean, jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.AllocatableValue);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=8, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 7
start local 7 1: iload 4
ifeq 4
2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$CommutativeThreeOp
dup
aload 2
aload 3
aload 7
aload 5
aload 6
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$CommutativeThreeOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: goto 5
4: StackMap locals: org.graalvm.compiler.lir.Variable
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$ThreeOp
dup
aload 2
aload 3
aload 7
aload 5
aload 6
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$ThreeOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
5: StackMap locals:
StackMap stack:
aload 7
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 6 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 6 1 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
0 6 2 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;
0 6 3 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 6 4 commutative Z
0 6 5 a Ljdk/vm/ci/meta/AllocatableValue;
0 6 6 b Ljdk/vm/ci/meta/AllocatableValue;
1 6 7 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
resultKind
op
size
commutative
a
b
protected boolean isNumericInteger(jdk.vm.ci.meta.PlatformKind);
descriptor: (Ljdk/vm/ci/meta/PlatformKind;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.isInteger:()Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 1 1 kind Ljdk/vm/ci/meta/PlatformKind;
MethodParameters:
Name Flags
kind
private org.graalvm.compiler.lir.Variable emitBaseOffsetLea(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, int, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;ILorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 1: new org.graalvm.compiler.lir.amd64.AMD64AddressValue
dup
aload 1
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 2
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
iload 3
invokespecial org.graalvm.compiler.lir.amd64.AMD64AddressValue.<init>:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/AllocatableValue;I)V
astore 6
start local 6 2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Move$LeaOp
dup
aload 5
aload 6
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64Move$LeaOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: aload 5
areturn
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 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 4 1 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
0 4 2 base Ljdk/vm/ci/meta/Value;
0 4 3 offset I
0 4 4 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
1 4 5 result Lorg/graalvm/compiler/lir/Variable;
2 4 6 address Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
MethodParameters:
Name Flags
resultKind
base
offset
size
public org.graalvm.compiler.lir.Variable emitAdd(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
astore 5
start local 5 1: aload 5
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;
getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
istore 6
start local 6 2: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 2
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 6
3: 3
4: 8
5: 13
6: 16
default: 19
}
3: StackMap locals: jdk.vm.ci.code.TargetDescription int
StackMap stack:
aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 7
iload 4
ifne 7
4: aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lstore 7
start local 7 5: lload 7
invokestatic org.graalvm.compiler.core.common.NumUtil.isInt:(J)Z
ifeq 7
lload 7
lconst_1
lcmp
ifeq 7
lload 7
ldc -1
lcmp
ifeq 7
6: aload 0
aload 1
aload 2
lload 7
l2i
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBaseOffsetLea:(Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;ILorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 7 7: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.ADD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 2
aload 3
iload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
areturn
8: StackMap locals:
StackMap stack:
aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 12
iload 4
ifne 12
9: aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lstore 7
start local 7 10: lload 7
invokestatic org.graalvm.compiler.core.common.NumUtil.isInt:(J)Z
ifeq 12
lload 7
lconst_1
lcmp
ifeq 12
lload 7
ldc -1
lcmp
ifeq 12
11: aload 0
aload 1
aload 2
lload 7
l2i
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBaseOffsetLea:(Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;ILorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 7 12: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.ADD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 2
aload 3
iload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
areturn
13: StackMap locals:
StackMap stack:
iload 6
ifeq 15
14: aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.ADD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
15: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.ADD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
16: StackMap locals:
StackMap stack:
iload 6
ifeq 18
17: aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.ADD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
18: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.ADD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
19: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
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 20 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 20 1 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
0 20 2 a Ljdk/vm/ci/meta/Value;
0 20 3 b Ljdk/vm/ci/meta/Value;
0 20 4 setFlags Z
1 20 5 target Ljdk/vm/ci/code/TargetDescription;
2 20 6 isAvx Z
5 7 7 displacement J
10 12 7 displacement J
MethodParameters:
Name Flags
resultKind
a
b
setFlags
public org.graalvm.compiler.lir.Variable emitSub(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
astore 5
start local 5 1: aload 5
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;
getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
istore 6
start local 6 2: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 2
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 6
3: 3
4: 4
5: 5
6: 8
default: 11
}
3: StackMap locals: jdk.vm.ci.code.TargetDescription int
StackMap stack:
aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.SUB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_0
aload 2
aload 3
iload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
areturn
4: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.SUB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_0
aload 2
aload 3
iload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
areturn
5: StackMap locals:
StackMap stack:
iload 6
ifeq 7
6: aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.SUB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_0
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
7: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.SUB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_0
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
8: StackMap locals:
StackMap stack:
iload 6
ifeq 10
9: aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.SUB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_0
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
10: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.SUB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_0
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
11: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
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 12 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 12 1 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
0 12 2 a Ljdk/vm/ci/meta/Value;
0 12 3 b Ljdk/vm/ci/meta/Value;
0 12 4 setFlags Z
1 12 5 target Ljdk/vm/ci/code/TargetDescription;
2 12 6 isAvx Z
MethodParameters:
Name Flags
resultKind
a
b
setFlags
private org.graalvm.compiler.lir.Variable emitIMULConst(org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, jdk.vm.ci.meta.AllocatableValue, org.graalvm.compiler.lir.ConstantValue);
descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/ConstantValue;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokevirtual org.graalvm.compiler.lir.ConstantValue.getJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lstore 4
start local 4 1: lload 4
invokestatic org.graalvm.compiler.core.common.NumUtil.isInt:(J)Z
ifeq 10
2: lload 4
l2i
istore 6
start local 6 3: iload 6
invokestatic org.graalvm.compiler.core.common.NumUtil.isByte:(I)Z
ifeq 6
4: getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMIOp.IMUL_SX:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMIOp;
astore 7
start local 7 5: goto 7
end local 7 6: StackMap locals: long int
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMIOp.IMUL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMIOp;
astore 7
start local 7 7: StackMap locals: org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMIOp
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
dup
iconst_1
aload 3
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 8
start local 8 8: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$RMIOp
dup
aload 7
aload 1
aload 8
aload 2
iload 6
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$RMIOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMIOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;I)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
9: aload 8
areturn
end local 8 end local 7 end local 6 10: StackMap locals:
StackMap stack:
aload 0
iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
dup
iconst_1
aload 3
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.IMUL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
aload 1
iconst_1
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 3
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinaryVar:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)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 11 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 11 1 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 11 2 a Ljdk/vm/ci/meta/AllocatableValue;
0 11 3 b Lorg/graalvm/compiler/lir/ConstantValue;
1 11 4 value J
3 10 6 imm I
5 6 7 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMIOp;
7 10 7 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMIOp;
8 10 8 ret Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
size
a
b
private org.graalvm.compiler.lir.Variable emitIMUL(org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 2
1: aload 0
aload 1
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 2
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asConstantValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/ConstantValue;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitIMULConst:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/ConstantValue;)Lorg/graalvm/compiler/lir/Variable;
areturn
2: StackMap locals:
StackMap stack:
aload 2
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 4
3: aload 0
aload 1
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 3
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 2
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asConstantValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/ConstantValue;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitIMULConst:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/ConstantValue;)Lorg/graalvm/compiler/lir/Variable;
areturn
4: StackMap locals:
StackMap stack:
aload 0
iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
dup
iconst_1
aload 3
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.IMUL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
aload 1
iconst_1
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 2
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 3
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinaryVar:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 5 1 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 5 2 a Ljdk/vm/ci/meta/Value;
0 5 3 b Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
size
a
b
public org.graalvm.compiler.lir.Variable emitMul(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
dup
iconst_1
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 4
start local 4 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
astore 5
start local 5 2: aload 5
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;
getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
istore 6
start local 6 3: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 6
3: 4
4: 5
5: 6
6: 9
default: 12
}
4: StackMap locals: org.graalvm.compiler.core.common.LIRKind jdk.vm.ci.code.TargetDescription int
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitIMUL:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
5: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitIMUL:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
6: StackMap locals:
StackMap stack:
iload 6
ifeq 8
7: aload 0
aload 4
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.MUL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
8: StackMap locals:
StackMap stack:
aload 0
aload 4
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.MUL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
9: StackMap locals:
StackMap stack:
iload 6
ifeq 11
10: aload 0
aload 4
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.MUL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
11: StackMap locals:
StackMap stack:
aload 0
aload 4
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.MUL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
12: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
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/AMD64ArithmeticLIRGenerator;
0 13 1 a Ljdk/vm/ci/meta/Value;
0 13 2 b Ljdk/vm/ci/meta/Value;
0 13 3 setFlags Z
1 13 4 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
2 13 5 target Ljdk/vm/ci/code/TargetDescription;
3 13 6 isAvx Z
MethodParameters:
Name Flags
a
b
setFlags
private jdk.vm.ci.code.RegisterValue moveToReg(jdk.vm.ci.code.Register, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/code/Register;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/RegisterValue;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
astore 3
start local 3 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 3
aload 2
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
2: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 3 1 reg Ljdk/vm/ci/code/Register;
0 3 2 v Ljdk/vm/ci/meta/Value;
1 3 3 ret Ljdk/vm/ci/code/RegisterValue;
MethodParameters:
Name Flags
reg
v
private jdk.vm.ci.meta.Value emitMulHigh(org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64MulDivOp
dup
aload 1
aload 2
iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 3
aastore
dup
iconst_1
aload 4
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
aload 0
getstatic jdk.vm.ci.amd64.AMD64.rax:Ljdk/vm/ci/code/Register;
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.moveToReg:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/RegisterValue;
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 4
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64MulDivOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
checkcast org.graalvm.compiler.lir.amd64.AMD64MulDivOp
astore 5
start local 5 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 5
invokevirtual org.graalvm.compiler.lir.amd64.AMD64MulDivOp.getHighResult:()Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
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 2 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 2 1 opcode Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
0 2 2 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 2 3 a Ljdk/vm/ci/meta/Value;
0 2 4 b Ljdk/vm/ci/meta/Value;
1 2 5 mulHigh Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
MethodParameters:
Name Flags
opcode
size
a
b
public jdk.vm.ci.meta.Value emitMulHigh(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
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.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 4
3: 1
4: 2
default: 3
}
1: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp.IMUL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitMulHigh:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp.IMUL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitMulHigh:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
areturn
3: 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 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 4 1 a Ljdk/vm/ci/meta/Value;
0 4 2 b Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
a
b
public jdk.vm.ci.meta.Value emitUMulHigh(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
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.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 4
3: 1
4: 2
default: 3
}
1: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp.MUL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitMulHigh:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp.MUL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitMulHigh:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
areturn
3: 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 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 4 1 a Ljdk/vm/ci/meta/Value;
0 4 2 b Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
a
b
public jdk.vm.ci.meta.Value emitBinaryMemory(org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, jdk.vm.ci.meta.AllocatableValue, org.graalvm.compiler.lir.amd64.AMD64AddressValue, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 3
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 6
start local 6 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$MemoryTwoOp
dup
aload 1
aload 2
aload 6
aload 3
aload 4
aload 5
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$MemoryTwoOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 6
areturn
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 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 3 1 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
0 3 2 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 3 3 a Ljdk/vm/ci/meta/AllocatableValue;
0 3 4 location Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
0 3 5 state Lorg/graalvm/compiler/lir/LIRFrameState;
1 3 6 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
op
size
a
location
state
public jdk.vm.ci.meta.Value emitBinaryMemory(org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RRMOp, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, jdk.vm.ci.meta.AllocatableValue, org.graalvm.compiler.lir.amd64.AMD64AddressValue, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 3
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 6
start local 6 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$MemoryThreeOp
dup
aload 1
aload 2
aload 6
aload 3
aload 4
aload 5
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$MemoryThreeOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 6
areturn
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 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 3 1 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;
0 3 2 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 3 3 a Ljdk/vm/ci/meta/AllocatableValue;
0 3 4 location Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
0 3 5 state Lorg/graalvm/compiler/lir/LIRFrameState;
1 3 6 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
op
size
a
location
state
protected jdk.vm.ci.meta.Value emitConvertMemoryOp(jdk.vm.ci.meta.PlatformKind, org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, org.graalvm.compiler.lir.amd64.AMD64AddressValue, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/PlatformKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 6
start local 6 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp
dup
aload 2
aload 3
aload 6
aload 4
aload 5
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 6
areturn
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 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 3 1 kind Ljdk/vm/ci/meta/PlatformKind;
0 3 2 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
0 3 3 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 3 4 address Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
0 3 5 state Lorg/graalvm/compiler/lir/LIRFrameState;
1 3 6 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
kind
op
size
address
state
protected jdk.vm.ci.meta.Value emitZeroExtendMemory(jdk.vm.ci.amd64.AMD64Kind, int, org.graalvm.compiler.lir.amd64.AMD64AddressValue, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/amd64/AMD64Kind;ILorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iload 2
bipush 32
if_icmpgt 1
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
goto 2
StackMap locals:
StackMap stack: org.graalvm.compiler.lir.gen.LIRGenerator
1: getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
StackMap locals: org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator jdk.vm.ci.amd64.AMD64Kind int org.graalvm.compiler.lir.amd64.AMD64AddressValue org.graalvm.compiler.lir.LIRFrameState
StackMap stack: org.graalvm.compiler.lir.gen.LIRGenerator jdk.vm.ci.amd64.AMD64Kind
2: invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 3: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 1 - 4
1: 4
2: 6
3: 8
4: 10
default: 12
}
4: StackMap locals: org.graalvm.compiler.lir.Variable
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVZXB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 5
aload 3
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
5: goto 13
6: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVZX:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 5
aload 3
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
7: goto 13
8: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 5
aload 3
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
9: goto 13
10: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 5
aload 3
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
11: goto 13
12: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
13: StackMap locals:
StackMap stack:
aload 5
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 14 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 14 1 memoryKind Ljdk/vm/ci/amd64/AMD64Kind;
0 14 2 resultBits I
0 14 3 address Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
0 14 4 state Lorg/graalvm/compiler/lir/LIRFrameState;
3 14 5 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
memoryKind
resultBits
address
state
private org.graalvm.compiler.lir.amd64.AMD64MulDivOp emitIDIV(org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
dup
iconst_1
aload 3
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 5
start local 5 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64SignExtendOp
dup
aload 1
aload 5
aload 0
getstatic jdk.vm.ci.amd64.AMD64.rax:Ljdk/vm/ci/code/Register;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.moveToReg:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/RegisterValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64SignExtendOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
checkcast org.graalvm.compiler.lir.amd64.AMD64SignExtendOp
astore 6
start local 6 2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64MulDivOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp.IDIV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
aload 1
aload 5
aload 6
invokevirtual org.graalvm.compiler.lir.amd64.AMD64SignExtendOp.getHighResult:()Ljdk/vm/ci/meta/AllocatableValue;
aload 6
invokevirtual org.graalvm.compiler.lir.amd64.AMD64SignExtendOp.getLowResult:()Ljdk/vm/ci/meta/AllocatableValue;
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 3
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64MulDivOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
checkcast org.graalvm.compiler.lir.amd64.AMD64MulDivOp
areturn
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 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 3 1 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 3 2 a Ljdk/vm/ci/meta/Value;
0 3 3 b Ljdk/vm/ci/meta/Value;
0 3 4 state Lorg/graalvm/compiler/lir/LIRFrameState;
1 3 5 kind Lorg/graalvm/compiler/core/common/LIRKind;
2 3 6 sx Lorg/graalvm/compiler/lir/amd64/AMD64SignExtendOp;
MethodParameters:
Name Flags
size
a
b
state
private org.graalvm.compiler.lir.amd64.AMD64MulDivOp emitDIV(org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
dup
iconst_1
aload 3
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 5
start local 5 1: aload 0
getstatic jdk.vm.ci.amd64.AMD64.rax:Ljdk/vm/ci/code/Register;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.moveToReg:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/RegisterValue;
astore 6
start local 6 2: getstatic jdk.vm.ci.amd64.AMD64.rdx:Ljdk/vm/ci/code/Register;
aload 5
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
astore 7
start local 7 3: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64ClearRegisterOp
dup
aload 1
aload 7
invokespecial org.graalvm.compiler.lir.amd64.AMD64ClearRegisterOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
4: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64MulDivOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp.DIV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
aload 1
aload 5
aload 7
aload 6
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 3
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64MulDivOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
checkcast org.graalvm.compiler.lir.amd64.AMD64MulDivOp
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 5 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 5 1 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 5 2 a Ljdk/vm/ci/meta/Value;
0 5 3 b Ljdk/vm/ci/meta/Value;
0 5 4 state Lorg/graalvm/compiler/lir/LIRFrameState;
1 5 5 kind Lorg/graalvm/compiler/core/common/LIRKind;
2 5 6 rax Ljdk/vm/ci/code/RegisterValue;
3 5 7 rdx Ljdk/vm/ci/code/RegisterValue;
MethodParameters:
Name Flags
size
a
b
state
public jdk.vm.ci.meta.Value[] emitSignedDivRem(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)[Ljdk/vm/ci/meta/Value;
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: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 4
3: 1
4: 3
default: 5
}
1: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitIDIV:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
astore 4
start local 4 2: goto 6
end local 4 3: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitIDIV:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
astore 4
start local 4 4: goto 6
end local 4 5: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
start local 4 6: StackMap locals: org.graalvm.compiler.lir.amd64.AMD64MulDivOp
StackMap stack:
iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 4
invokevirtual org.graalvm.compiler.lir.amd64.AMD64MulDivOp.getQuotient:()Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
aastore
dup
iconst_1
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 4
invokevirtual org.graalvm.compiler.lir.amd64.AMD64MulDivOp.getRemainder:()Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
aastore
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 7 1 a Ljdk/vm/ci/meta/Value;
0 7 2 b Ljdk/vm/ci/meta/Value;
0 7 3 state Lorg/graalvm/compiler/lir/LIRFrameState;
2 3 4 op Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
4 5 4 op Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
6 7 4 op Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
MethodParameters:
Name Flags
a
b
state
public jdk.vm.ci.meta.Value[] emitUnsignedDivRem(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)[Ljdk/vm/ci/meta/Value;
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: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 4
3: 1
4: 3
default: 5
}
1: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitDIV:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
astore 4
start local 4 2: goto 6
end local 4 3: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitDIV:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
astore 4
start local 4 4: goto 6
end local 4 5: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
start local 4 6: StackMap locals: org.graalvm.compiler.lir.amd64.AMD64MulDivOp
StackMap stack:
iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 4
invokevirtual org.graalvm.compiler.lir.amd64.AMD64MulDivOp.getQuotient:()Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
aastore
dup
iconst_1
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 4
invokevirtual org.graalvm.compiler.lir.amd64.AMD64MulDivOp.getRemainder:()Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
aastore
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 7 1 a Ljdk/vm/ci/meta/Value;
0 7 2 b Ljdk/vm/ci/meta/Value;
0 7 3 state Lorg/graalvm/compiler/lir/LIRFrameState;
2 3 4 op Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
4 5 4 op Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
6 7 4 op Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
MethodParameters:
Name Flags
a
b
state
public jdk.vm.ci.meta.Value emitDiv(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
astore 4
start local 4 1: aload 4
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;
getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
istore 5
start local 5 2: iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
dup
iconst_1
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 6
start local 6 3: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 6
3: 4
4: 6
5: 8
6: 11
default: 14
}
4: StackMap locals: jdk.vm.ci.code.TargetDescription int org.graalvm.compiler.core.common.LIRKind
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitIDIV:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
astore 7
start local 7 5: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 7
invokevirtual org.graalvm.compiler.lir.amd64.AMD64MulDivOp.getQuotient:()Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 7 6: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitIDIV:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
astore 8
start local 8 7: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 8
invokevirtual org.graalvm.compiler.lir.amd64.AMD64MulDivOp.getQuotient:()Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 8 8: StackMap locals:
StackMap stack:
iload 5
ifeq 10
9: aload 0
aload 6
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.DIV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_0
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
10: StackMap locals:
StackMap stack:
aload 0
aload 6
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.DIV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_0
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
11: StackMap locals:
StackMap stack:
iload 5
ifeq 13
12: aload 0
aload 6
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.DIV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_0
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
13: StackMap locals:
StackMap stack:
aload 0
aload 6
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.DIV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_0
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
14: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
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 15 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 15 1 a Ljdk/vm/ci/meta/Value;
0 15 2 b Ljdk/vm/ci/meta/Value;
0 15 3 state Lorg/graalvm/compiler/lir/LIRFrameState;
1 15 4 target Ljdk/vm/ci/code/TargetDescription;
2 15 5 isAvx Z
3 15 6 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
5 6 7 op Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
7 8 8 lop Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
MethodParameters:
Name Flags
a
b
state
public jdk.vm.ci.meta.Value emitRem(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 6
3: 1
4: 3
5: 5
6: 8
default: 11
}
1: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitIDIV:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
astore 4
start local 4 2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 4
invokevirtual org.graalvm.compiler.lir.amd64.AMD64MulDivOp.getRemainder:()Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 4 3: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitIDIV:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
astore 5
start local 5 4: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 5
invokevirtual org.graalvm.compiler.lir.amd64.AMD64MulDivOp.getRemainder:()Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 5 5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
dup
iconst_1
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 6
start local 6 6: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Arithmetic$FPDivRemOp
dup
getstatic org.graalvm.compiler.lir.amd64.AMD64Arithmetic.FREM:Lorg/graalvm/compiler/lir/amd64/AMD64Arithmetic;
aload 6
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 2
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Arithmetic$FPDivRemOp.<init>:(Lorg/graalvm/compiler/lir/amd64/AMD64Arithmetic;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
7: aload 6
areturn
end local 6 8: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
dup
iconst_1
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 6
start local 6 9: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Arithmetic$FPDivRemOp
dup
getstatic org.graalvm.compiler.lir.amd64.AMD64Arithmetic.DREM:Lorg/graalvm/compiler/lir/amd64/AMD64Arithmetic;
aload 6
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 2
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Arithmetic$FPDivRemOp.<init>:(Lorg/graalvm/compiler/lir/amd64/AMD64Arithmetic;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
10: aload 6
areturn
end local 6 11: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 12 1 a Ljdk/vm/ci/meta/Value;
0 12 2 b Ljdk/vm/ci/meta/Value;
0 12 3 state Lorg/graalvm/compiler/lir/LIRFrameState;
2 3 4 op Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
4 5 5 lop Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
6 8 6 result Lorg/graalvm/compiler/lir/Variable;
9 11 6 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
a
b
state
public org.graalvm.compiler.lir.Variable emitUDiv(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/Variable;
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: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 4
3: 1
4: 3
default: 5
}
1: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitDIV:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
astore 4
start local 4 2: goto 6
end local 4 3: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitDIV:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
astore 4
start local 4 4: goto 6
end local 4 5: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
start local 4 6: StackMap locals: org.graalvm.compiler.lir.amd64.AMD64MulDivOp
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 4
invokevirtual org.graalvm.compiler.lir.amd64.AMD64MulDivOp.getQuotient:()Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)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 7 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 7 1 a Ljdk/vm/ci/meta/Value;
0 7 2 b Ljdk/vm/ci/meta/Value;
0 7 3 state Lorg/graalvm/compiler/lir/LIRFrameState;
2 3 4 op Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
4 5 4 op Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
6 7 4 op Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
MethodParameters:
Name Flags
a
b
state
public org.graalvm.compiler.lir.Variable emitURem(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/Variable;
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: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 4
3: 1
4: 3
default: 5
}
1: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitDIV:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
astore 4
start local 4 2: goto 6
end local 4 3: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitDIV:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
astore 4
start local 4 4: goto 6
end local 4 5: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
start local 4 6: StackMap locals: org.graalvm.compiler.lir.amd64.AMD64MulDivOp
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 4
invokevirtual org.graalvm.compiler.lir.amd64.AMD64MulDivOp.getRemainder:()Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)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 7 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 7 1 a Ljdk/vm/ci/meta/Value;
0 7 2 b Ljdk/vm/ci/meta/Value;
0 7 3 state Lorg/graalvm/compiler/lir/LIRFrameState;
2 3 4 op Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
4 5 4 op Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
6 7 4 op Lorg/graalvm/compiler/lir/amd64/AMD64MulDivOp;
MethodParameters:
Name Flags
a
b
state
public org.graalvm.compiler.lir.Variable emitAnd(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
dup
iconst_1
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 3
start local 3 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
astore 4
start local 4 2: aload 4
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;
getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
istore 5
start local 5 3: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 6
3: 4
4: 5
5: 6
6: 9
default: 12
}
4: StackMap locals: org.graalvm.compiler.core.common.LIRKind jdk.vm.ci.code.TargetDescription int
StackMap stack:
aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.AND:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
iconst_0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
areturn
5: StackMap locals:
StackMap stack:
aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.AND:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
iconst_0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
areturn
6: StackMap locals:
StackMap stack:
iload 5
ifeq 8
7: aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.AND:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
8: StackMap locals:
StackMap stack:
aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.AND:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
9: StackMap locals:
StackMap stack:
iload 5
ifeq 11
10: aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.AND:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
11: StackMap locals:
StackMap stack:
aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.AND:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
12: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
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/AMD64ArithmeticLIRGenerator;
0 13 1 a Ljdk/vm/ci/meta/Value;
0 13 2 b Ljdk/vm/ci/meta/Value;
1 13 3 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
2 13 4 target Ljdk/vm/ci/code/TargetDescription;
3 13 5 isAvx Z
MethodParameters:
Name Flags
a
b
public org.graalvm.compiler.lir.Variable emitOr(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
dup
iconst_1
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 3
start local 3 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
astore 4
start local 4 2: aload 4
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;
getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
istore 5
start local 5 3: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 6
3: 4
4: 5
5: 6
6: 9
default: 12
}
4: StackMap locals: org.graalvm.compiler.core.common.LIRKind jdk.vm.ci.code.TargetDescription int
StackMap stack:
aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.OR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
iconst_0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
areturn
5: StackMap locals:
StackMap stack:
aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.OR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
iconst_0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
areturn
6: StackMap locals:
StackMap stack:
iload 5
ifeq 8
7: aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.OR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
8: StackMap locals:
StackMap stack:
aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.OR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
9: StackMap locals:
StackMap stack:
iload 5
ifeq 11
10: aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.OR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
11: StackMap locals:
StackMap stack:
aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.OR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
12: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
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/AMD64ArithmeticLIRGenerator;
0 13 1 a Ljdk/vm/ci/meta/Value;
0 13 2 b Ljdk/vm/ci/meta/Value;
1 13 3 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
2 13 4 target Ljdk/vm/ci/code/TargetDescription;
3 13 5 isAvx Z
MethodParameters:
Name Flags
a
b
public org.graalvm.compiler.lir.Variable emitXor(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
dup
iconst_1
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 3
start local 3 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
astore 4
start local 4 2: aload 4
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;
getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
istore 5
start local 5 3: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 6
3: 4
4: 5
5: 6
6: 9
default: 12
}
4: StackMap locals: org.graalvm.compiler.core.common.LIRKind jdk.vm.ci.code.TargetDescription int
StackMap stack:
aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.XOR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
iconst_0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
areturn
5: StackMap locals:
StackMap stack:
aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.XOR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
iconst_0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
areturn
6: StackMap locals:
StackMap stack:
iload 5
ifeq 8
7: aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.XOR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
8: StackMap locals:
StackMap stack:
aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.XOR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
9: StackMap locals:
StackMap stack:
iload 5
ifeq 11
10: aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp.XOR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AVXOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RRMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
11: StackMap locals:
StackMap stack:
aload 0
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.XOR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_1
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBinary:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
12: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
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/AMD64ArithmeticLIRGenerator;
0 13 1 a Ljdk/vm/ci/meta/Value;
0 13 2 b Ljdk/vm/ci/meta/Value;
1 13 3 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
2 13 4 target Ljdk/vm/ci/code/TargetDescription;
3 13 5 isAvx Z
MethodParameters:
Name Flags
a
b
private org.graalvm.compiler.lir.Variable emitShift(org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64Shift, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 3
aastore
dup
iconst_1
aload 4
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
aload 3
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 3
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
astore 6
start local 6 2: aload 4
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 9
3: aload 4
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
astore 7
start local 7 4: aload 7
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lconst_1
lcmp
ifne 7
5: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MOp
dup
aload 1
getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64Shift.m1Op:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
aload 2
aload 5
aload 6
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: goto 11
7: StackMap locals: org.graalvm.compiler.lir.Variable jdk.vm.ci.meta.AllocatableValue jdk.vm.ci.meta.JavaConstant
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$ConstOp
dup
aload 1
getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64Shift.miOp:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;
aload 2
aload 5
aload 6
aload 7
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
l2i
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$ConstOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;I)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
end local 7 8: goto 11
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
getstatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.RCX_I:Ljdk/vm/ci/code/RegisterValue;
aload 4
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
10: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64ShiftOp
dup
aload 1
getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64Shift.mcOp:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;
aload 2
aload 5
aload 6
getstatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.RCX_I:Ljdk/vm/ci/code/RegisterValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64ShiftOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
11: StackMap locals:
StackMap stack:
aload 5
areturn
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 12 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 12 1 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;
0 12 2 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 12 3 a Ljdk/vm/ci/meta/Value;
0 12 4 b Ljdk/vm/ci/meta/Value;
1 12 5 result Lorg/graalvm/compiler/lir/Variable;
2 12 6 input Ljdk/vm/ci/meta/AllocatableValue;
4 8 7 c Ljdk/vm/ci/meta/JavaConstant;
MethodParameters:
Name Flags
op
size
a
b
public org.graalvm.compiler.lir.Variable emitShl(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
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.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 4
3: 1
4: 2
default: 3
}
1: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64Shift.SHL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitShift:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64Shift.SHL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitShift:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
3: 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 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 4 1 a Ljdk/vm/ci/meta/Value;
0 4 2 b Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
a
b
public org.graalvm.compiler.lir.Variable emitShr(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
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.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 4
3: 1
4: 2
default: 3
}
1: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64Shift.SAR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitShift:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64Shift.SAR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitShift:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
3: 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 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 4 1 a Ljdk/vm/ci/meta/Value;
0 4 2 b Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
a
b
public org.graalvm.compiler.lir.Variable emitUShr(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
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.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 4
3: 1
4: 2
default: 3
}
1: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64Shift.SHR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitShift:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64Shift.SHR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitShift:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
3: 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 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 4 1 a Ljdk/vm/ci/meta/Value;
0 4 2 b Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
a
b
public org.graalvm.compiler.lir.Variable emitRol(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
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.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 4
3: 1
4: 2
default: 3
}
1: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64Shift.ROL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitShift:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64Shift.ROL:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitShift:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
3: 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 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 4 1 a Ljdk/vm/ci/meta/Value;
0 4 2 b Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
a
b
public org.graalvm.compiler.lir.Variable emitRor(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
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.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 4
3: 1
4: 2
default: 3
}
1: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64Shift.ROR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitShift:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64Shift.ROR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitShift:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64Shift;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
3: 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 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 4 1 a Ljdk/vm/ci/meta/Value;
0 4 2 b Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
a
b
private jdk.vm.ci.meta.AllocatableValue emitConvertOp(org.graalvm.compiler.core.common.LIRKind, org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp
dup
aload 2
aload 3
aload 5
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 4
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 5
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 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 3 1 kind Lorg/graalvm/compiler/core/common/LIRKind;
0 3 2 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
0 3 3 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 3 4 input Ljdk/vm/ci/meta/Value;
1 3 5 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
kind
op
size
input
private jdk.vm.ci.meta.AllocatableValue emitConvertOp(org.graalvm.compiler.core.common.LIRKind, org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MROp, org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MROp
dup
aload 2
aload 3
aload 5
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 4
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MROp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 5
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 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 3 1 kind Lorg/graalvm/compiler/core/common/LIRKind;
0 3 2 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;
0 3 3 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 3 4 input Ljdk/vm/ci/meta/Value;
1 3 5 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
kind
op
size
input
public jdk.vm.ci.meta.Value emitReinterpret(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
astore 3
start local 3 1: aload 1
aload 3
invokevirtual org.graalvm.compiler.core.common.LIRKind.equals:(Ljava/lang/Object;)Z
ifeq 3
2: aload 2
areturn
3: StackMap locals: jdk.vm.ci.meta.ValueKind
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 2
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
astore 4
start local 4 4: aload 3
invokevirtual jdk.vm.ci.meta.ValueKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
astore 5
start local 5 5: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 6
3: 6
4: 9
5: 12
6: 15
default: 17
}
6: StackMap locals: jdk.vm.ci.meta.AllocatableValue jdk.vm.ci.amd64.AMD64Kind
StackMap stack:
invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 5
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 5 - 5
5: 7
default: 8
}
7: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MROp.MOVD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
8: StackMap locals:
StackMap stack:
goto 17
9: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 5
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 6 - 6
6: 10
default: 11
}
10: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MROp.MOVQ:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
11: StackMap locals:
StackMap stack:
goto 17
12: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 5
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 3 - 3
3: 13
default: 14
}
13: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
14: StackMap locals:
StackMap stack:
goto 17
15: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 5
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 4 - 4
4: 16
default: 17
}
16: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVQ:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
17: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
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 18 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 18 1 to Lorg/graalvm/compiler/core/common/LIRKind;
0 18 2 inputVal Ljdk/vm/ci/meta/Value;
1 18 3 from Ljdk/vm/ci/meta/ValueKind<*>;
4 18 4 input Ljdk/vm/ci/meta/AllocatableValue;
5 18 5 fromKind Ljdk/vm/ci/amd64/AMD64Kind;
MethodParameters:
Name Flags
to
inputVal
public jdk.vm.ci.meta.Value emitFloatConvert(org.graalvm.compiler.core.common.calc.FloatConvert, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/core/common/calc/FloatConvert;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
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.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$core$common$calc$FloatConvert:()[I
aload 1
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
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.SINGLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTSD2SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
2: StackMap locals:
StackMap stack:
aload 0
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTTSD2SI:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
3: StackMap locals:
StackMap stack:
aload 0
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTTSD2SI:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
4: StackMap locals:
StackMap stack:
aload 0
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTSS2SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
5: StackMap locals:
StackMap stack:
aload 0
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTTSS2SI:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
6: StackMap locals:
StackMap stack:
aload 0
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTTSS2SI:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
7: StackMap locals:
StackMap stack:
aload 0
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTSI2SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
8: StackMap locals:
StackMap stack:
aload 0
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.SINGLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTSI2SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
9: StackMap locals:
StackMap stack:
aload 0
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTSI2SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
10: StackMap locals:
StackMap stack:
aload 0
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.SINGLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.CVTSI2SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
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/AMD64ArithmeticLIRGenerator;
0 12 1 op Lorg/graalvm/compiler/core/common/calc/FloatConvert;
0 12 2 input Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
op
input
public jdk.vm.ci.meta.Value emitNarrow(jdk.vm.ci.meta.Value, int);
descriptor: (Ljdk/vm/ci/meta/Value;I)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpne 2
iload 2
bipush 32
if_icmpgt 2
1: aload 0
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
2: StackMap locals:
StackMap stack:
aload 1
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/AMD64ArithmeticLIRGenerator;
0 3 1 inputVal Ljdk/vm/ci/meta/Value;
0 3 2 bits I
MethodParameters:
Name Flags
inputVal
bits
public jdk.vm.ci.meta.Value emitSignExtend(jdk.vm.ci.meta.Value, int, int);
descriptor: (Ljdk/vm/ci/meta/Value;II)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$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:
iload 2
iload 3
if_icmpne 4
3: aload 1
areturn
4: StackMap locals:
StackMap stack:
iload 3
bipush 32
if_icmple 10
5: iload 2
lookupswitch { // 3
8: 6
16: 7
32: 8
default: 9
}
6: StackMap locals:
StackMap stack:
aload 0
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVSXB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
7: StackMap locals:
StackMap stack:
aload 0
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVSX:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
8: StackMap locals:
StackMap stack:
aload 0
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVSXD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
9: 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
10: StackMap locals:
StackMap stack:
iload 2
lookupswitch { // 3
8: 11
16: 12
32: 13
default: 14
}
11: StackMap locals:
StackMap stack:
aload 0
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVSXB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
12: StackMap locals:
StackMap stack:
aload 0
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVSX:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
13: StackMap locals:
StackMap stack:
aload 1
areturn
14: 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
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/AMD64ArithmeticLIRGenerator;
0 15 1 inputVal Ljdk/vm/ci/meta/Value;
0 15 2 fromBits I
0 15 3 toBits I
MethodParameters:
Name Flags
inputVal
fromBits
toBits
public jdk.vm.ci.meta.Value emitZeroExtend(jdk.vm.ci.meta.Value, int, int);
descriptor: (Ljdk/vm/ci/meta/Value;II)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$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:
iload 2
iload 3
if_icmpne 4
3: aload 1
areturn
4: StackMap locals:
StackMap stack:
iload 2
bipush 32
if_icmple 10
5: getstatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$assertionsDisabled:Z
ifne 6
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpeq 6
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 4
start local 4 7: iload 2
invokestatic jdk.vm.ci.code.CodeUtil.mask:(I)J
lstore 5
start local 5 8: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$DataTwoOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.AND:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getRMOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 4
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
lload 5
invokestatic jdk.vm.ci.meta.JavaConstant.forLong:(J)Ljdk/vm/ci/meta/PrimitiveConstant;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$DataTwoOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
9: aload 4
areturn
end local 5 end local 4 10: StackMap locals:
StackMap stack:
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 4
start local 4 11: iload 3
bipush 32
if_icmple 14
12: aload 4
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 4
13: goto 15
14: StackMap locals: org.graalvm.compiler.core.common.LIRKind
StackMap stack:
aload 4
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 4
15: StackMap locals:
StackMap stack:
iload 2
lookupswitch { // 3
8: 16
16: 17
32: 18
default: 19
}
16: StackMap locals:
StackMap stack:
aload 0
aload 4
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVZXB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
17: StackMap locals:
StackMap stack:
aload 0
aload 4
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVZX:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
18: StackMap locals:
StackMap stack:
aload 0
aload 4
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitConvertOp:(Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
19: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 4
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 20: iload 3
bipush 32
if_icmple 23
21: iload 2
invokestatic jdk.vm.ci.code.CodeUtil.mask:(I)J
invokestatic jdk.vm.ci.meta.JavaConstant.forLong:(J)Ljdk/vm/ci/meta/PrimitiveConstant;
astore 6
start local 6 22: goto 24
end local 6 23: StackMap locals: org.graalvm.compiler.lir.Variable
StackMap stack:
iload 2
invokestatic jdk.vm.ci.code.CodeUtil.mask:(I)J
l2i
invokestatic jdk.vm.ci.meta.JavaConstant.forInt:(I)Ljdk/vm/ci/meta/PrimitiveConstant;
astore 6
start local 6 24: StackMap locals: jdk.vm.ci.meta.JavaConstant
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$DataTwoOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.AND:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getRMOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 5
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 6
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$DataTwoOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
25: aload 5
areturn
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 26 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 26 1 inputVal Ljdk/vm/ci/meta/Value;
0 26 2 fromBits I
0 26 3 toBits I
7 10 4 result Lorg/graalvm/compiler/lir/Variable;
8 10 5 mask J
11 26 4 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
20 26 5 result Lorg/graalvm/compiler/lir/Variable;
22 23 6 mask Ljdk/vm/ci/meta/JavaConstant;
24 26 6 mask Ljdk/vm/ci/meta/JavaConstant;
MethodParameters:
Name Flags
inputVal
fromBits
toBits
public org.graalvm.compiler.lir.Variable emitBitCount(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 2
start local 2 1: getstatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$assertionsDisabled:Z
ifne 2
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.isInteger:()Z
ifne 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: org.graalvm.compiler.lir.Variable
StackMap stack:
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpne 5
3: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.POPCNT:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
4: goto 6
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.POPCNT:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 7 1 value Ljdk/vm/ci/meta/Value;
1 7 2 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
value
public org.graalvm.compiler.lir.Variable emitBitScanForward(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 2
start local 2 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.BSF:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 2
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/AMD64ArithmeticLIRGenerator;
0 3 1 value Ljdk/vm/ci/meta/Value;
1 3 2 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
value
public org.graalvm.compiler.lir.Variable emitBitScanReverse(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 2
start local 2 1: getstatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$assertionsDisabled:Z
ifne 2
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.isInteger:()Z
ifne 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: org.graalvm.compiler.lir.Variable
StackMap stack:
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpne 5
3: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.BSR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
4: goto 6
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.BSR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 7 1 value Ljdk/vm/ci/meta/Value;
1 7 2 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
value
public jdk.vm.ci.meta.Value emitCountLeadingZeros(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 2
start local 2 1: getstatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$assertionsDisabled:Z
ifne 2
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.isInteger:()Z
ifne 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: org.graalvm.compiler.lir.Variable
StackMap stack:
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpne 5
3: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.LZCNT:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
4: goto 6
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.LZCNT:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 7 1 value Ljdk/vm/ci/meta/Value;
1 7 2 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
value
public jdk.vm.ci.meta.Value emitCountTrailingZeros(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 2
start local 2 1: getstatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$assertionsDisabled:Z
ifne 2
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.isInteger:()Z
ifne 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: org.graalvm.compiler.lir.Variable
StackMap stack:
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpne 5
3: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.TZCNT:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
4: goto 6
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.TZCNT:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 7 1 value Ljdk/vm/ci/meta/Value;
1 7 2 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
value
public jdk.vm.ci.meta.Value emitMathAbs(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 2
start local 2 1: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 5 - 6
5: 2
6: 4
default: 6
}
2: StackMap locals: org.graalvm.compiler.lir.Variable
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$DataTwoOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.AND:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
ldc 2147483647
invokestatic java.lang.Float.intBitsToFloat:(I)F
invokestatic jdk.vm.ci.meta.JavaConstant.forFloat:(F)Ljdk/vm/ci/meta/PrimitiveConstant;
bipush 16
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$DataTwoOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;I)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: goto 7
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$DataTwoOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.AND:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
ldc 9223372036854775807
invokestatic java.lang.Double.longBitsToDouble:(J)D
invokestatic jdk.vm.ci.meta.JavaConstant.forDouble:(D)Ljdk/vm/ci/meta/PrimitiveConstant;
bipush 16
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$DataTwoOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;I)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
5: goto 7
6: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
7: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 8 1 input Ljdk/vm/ci/meta/Value;
1 8 2 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
input
public jdk.vm.ci.meta.Value emitMathSqrt(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 2
start local 2 1: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 5 - 6
5: 2
6: 4
default: 6
}
2: StackMap locals: org.graalvm.compiler.lir.Variable
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.SQRT:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: goto 7
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.SQRT:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
5: goto 7
6: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
7: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 8 1 input Ljdk/vm/ci/meta/Value;
1 8 2 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
input
public jdk.vm.ci.meta.Value emitMathLog(jdk.vm.ci.meta.Value, boolean);
descriptor: (Ljdk/vm/ci/meta/Value;Z)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 3
start local 3 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.getResult:()Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilder.allocateSpillSlot:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/VirtualStackSlot;
astore 4
start local 4 2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
3: new org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp
dup
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getAMD64LIRGen:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
iload 2
ifeq 4
getstatic org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode.LOG10:Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode;
goto 5
StackMap locals: org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator jdk.vm.ci.meta.Value int org.graalvm.compiler.lir.Variable jdk.vm.ci.meta.AllocatableValue
StackMap stack: org.graalvm.compiler.lir.gen.LIRGenerator new 3 new 3 org.graalvm.compiler.core.amd64.AMD64LIRGenerator
4: getstatic org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode.LOG:Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode;
StackMap locals: org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator jdk.vm.ci.meta.Value int org.graalvm.compiler.lir.Variable jdk.vm.ci.meta.AllocatableValue
StackMap stack: org.graalvm.compiler.lir.gen.LIRGenerator new 3 new 3 org.graalvm.compiler.core.amd64.AMD64LIRGenerator org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode
5: aload 3
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 7 1 input Ljdk/vm/ci/meta/Value;
0 7 2 base10 Z
1 7 3 result Lorg/graalvm/compiler/lir/Variable;
2 7 4 stackSlot Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
input
base10
public jdk.vm.ci.meta.Value emitMathCos(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 2
start local 2 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.getResult:()Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilder.allocateSpillSlot:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/VirtualStackSlot;
astore 3
start local 3 2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp
dup
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getAMD64LIRGen:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
getstatic org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode.COS:Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 3
invokespecial org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: aload 2
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/AMD64ArithmeticLIRGenerator;
0 4 1 input Ljdk/vm/ci/meta/Value;
1 4 2 result Lorg/graalvm/compiler/lir/Variable;
2 4 3 stackSlot Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
input
public jdk.vm.ci.meta.Value emitMathSin(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 2
start local 2 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.getResult:()Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilder.allocateSpillSlot:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/VirtualStackSlot;
astore 3
start local 3 2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp
dup
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getAMD64LIRGen:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
getstatic org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode.SIN:Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 3
invokespecial org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: aload 2
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/AMD64ArithmeticLIRGenerator;
0 4 1 input Ljdk/vm/ci/meta/Value;
1 4 2 result Lorg/graalvm/compiler/lir/Variable;
2 4 3 stackSlot Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
input
public jdk.vm.ci.meta.Value emitMathTan(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 2
start local 2 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.getResult:()Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilder.allocateSpillSlot:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/VirtualStackSlot;
astore 3
start local 3 2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp
dup
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getAMD64LIRGen:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
getstatic org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode.TAN:Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 3
invokespecial org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: aload 2
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/AMD64ArithmeticLIRGenerator;
0 4 1 input Ljdk/vm/ci/meta/Value;
1 4 2 result Lorg/graalvm/compiler/lir/Variable;
2 4 3 stackSlot Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
input
public jdk.vm.ci.meta.Value emitMathExp(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 2
start local 2 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.getResult:()Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilder.allocateSpillSlot:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/VirtualStackSlot;
astore 3
start local 3 2: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp
dup
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getAMD64LIRGen:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
getstatic org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode.EXP:Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 3
invokespecial org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: aload 2
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/AMD64ArithmeticLIRGenerator;
0 4 1 input Ljdk/vm/ci/meta/Value;
1 4 2 result Lorg/graalvm/compiler/lir/Variable;
2 4 3 stackSlot Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
input
public jdk.vm.ci.meta.Value emitMathPow(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 3
start local 3 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicBinaryOp
dup
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getAMD64LIRGen:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
getstatic org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicBinaryOp$BinaryIntrinsicOpcode.POW:Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicBinaryOp$BinaryIntrinsicOpcode;
aload 3
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 2
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicBinaryOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicBinaryOp$BinaryIntrinsicOpcode;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 3 1 input1 Ljdk/vm/ci/meta/Value;
0 3 2 input2 Ljdk/vm/ci/meta/Value;
1 3 3 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
input1
input2
protected org.graalvm.compiler.core.amd64.AMD64LIRGenerator getAMD64LIRGen();
descriptor: ()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
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/AMD64ArithmeticLIRGenerator;
public org.graalvm.compiler.lir.Variable emitLoad(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getAMD64LIRGen:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
astore 4
start local 4 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.toRegisterKind:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/meta/ValueKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 2: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 1 - 6
1: 3
2: 5
3: 7
4: 9
5: 11
6: 13
default: 15
}
3: StackMap locals: org.graalvm.compiler.lir.amd64.AMD64AddressValue org.graalvm.compiler.lir.Variable
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVSXB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 5
aload 4
aload 3
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
4: goto 16
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVSX:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 5
aload 4
aload 3
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: goto 16
7: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 5
aload 4
aload 3
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
8: goto 16
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 5
aload 4
aload 3
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
10: goto 16
11: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVSS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 5
aload 4
aload 3
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
12: goto 16
13: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVSD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 5
aload 4
aload 3
invokespecial org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
14: goto 16
15: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
16: StackMap locals:
StackMap stack:
aload 5
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 17 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 17 1 kind Lorg/graalvm/compiler/core/common/LIRKind;
0 17 2 address Ljdk/vm/ci/meta/Value;
0 17 3 state Lorg/graalvm/compiler/lir/LIRFrameState;
1 17 4 loadAddress Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
2 17 5 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
kind
address
state
protected void emitStoreConst(jdk.vm.ci.amd64.AMD64Kind, org.graalvm.compiler.lir.amd64.AMD64AddressValue, org.graalvm.compiler.lir.ConstantValue, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/amd64/AMD64Kind;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/ConstantValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=11, 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.lir.ConstantValue.getConstant:()Ljdk/vm/ci/meta/Constant;
astore 5
start local 5 1: aload 5
invokestatic jdk.vm.ci.meta.JavaConstant.isNull:(Ljdk/vm/ci/meta/Constant;)Z
ifeq 8
2: getstatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$assertionsDisabled:Z
ifne 3
aload 1
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpeq 3
aload 1
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpeq 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals: jdk.vm.ci.meta.Constant
StackMap stack:
aload 1
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpne 4
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
goto 5
StackMap locals:
StackMap stack:
4: getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
StackMap locals:
StackMap stack: org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize
5: astore 6
start local 6 6: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryConstOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MIOp.MOV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;
aload 6
aload 2
iconst_0
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryConstOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;ILorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
7: return
end local 6 8: StackMap locals:
StackMap stack:
aload 5
instanceof jdk.vm.ci.meta.VMConstant
ifeq 14
9: aload 1
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpne 41
10: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.inlineObjects:Z
ifne 11
aload 5
instanceof jdk.vm.ci.meta.JavaConstant
ifne 41
11: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$assertionsDisabled:Z
ifne 12
aload 5
instanceof jdk.vm.ci.meta.JavaConstant
ifeq 12
aload 5
checkcast jdk.vm.ci.meta.JavaConstant
invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
if_acmpeq 12
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryVMConstOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MIOp.MOV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;
aload 2
aload 5
checkcast jdk.vm.ci.meta.VMConstant
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryVMConstOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/VMConstant;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
13: return
14: StackMap locals:
StackMap stack:
aload 5
checkcast jdk.vm.ci.meta.JavaConstant
astore 6
start local 6 15: getstatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$assertionsDisabled:Z
ifne 16
aload 6
invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.isPrimitive:()Z
ifne 16
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
16: StackMap locals: jdk.vm.ci.meta.JavaConstant
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MIOp.MOV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;
astore 7
start local 7 17: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 1 - 6
1: 18
2: 22
3: 25
4: 28
5: 31
6: 34
default: 37
}
18: StackMap locals: org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MIOp
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MIOp.MOVB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;
astore 7
19: getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.BYTE:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
astore 8
start local 8 20: aload 6
invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
i2l
lstore 9
start local 9 21: goto 38
end local 9 end local 8 22: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.WORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
astore 8
start local 8 23: aload 6
invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
i2l
lstore 9
start local 9 24: goto 38
end local 9 end local 8 25: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
astore 8
start local 8 26: aload 6
invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
i2l
lstore 9
start local 9 27: goto 38
end local 9 end local 8 28: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
astore 8
start local 8 29: aload 6
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lstore 9
start local 9 30: goto 38
end local 9 end local 8 31: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
astore 8
start local 8 32: aload 6
invokeinterface jdk.vm.ci.meta.JavaConstant.asFloat:()F
invokestatic java.lang.Float.floatToRawIntBits:(F)I
i2l
lstore 9
start local 9 33: goto 38
end local 9 end local 8 34: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
astore 8
start local 8 35: aload 6
invokeinterface jdk.vm.ci.meta.JavaConstant.asDouble:()D
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
lstore 9
start local 9 36: goto 38
end local 9 end local 8 37: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "unexpected kind "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
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
start local 8 start local 9 38: StackMap locals: org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize long
StackMap stack:
lload 9
invokestatic org.graalvm.compiler.core.common.NumUtil.isInt:(J)Z
ifeq 41
39: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryConstOp
dup
aload 7
aload 8
aload 2
lload 9
l2i
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryConstOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;ILorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
40: return
end local 9 end local 8 end local 7 end local 6 41: StackMap locals: org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator jdk.vm.ci.amd64.AMD64Kind org.graalvm.compiler.lir.amd64.AMD64AddressValue org.graalvm.compiler.lir.ConstantValue org.graalvm.compiler.lir.LIRFrameState jdk.vm.ci.meta.Constant
StackMap stack:
aload 0
aload 1
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 3
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 4
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
42: return
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 43 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 43 1 kind Ljdk/vm/ci/amd64/AMD64Kind;
0 43 2 address Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
0 43 3 value Lorg/graalvm/compiler/lir/ConstantValue;
0 43 4 state Lorg/graalvm/compiler/lir/LIRFrameState;
1 43 5 c Ljdk/vm/ci/meta/Constant;
6 8 6 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
15 41 6 jc Ljdk/vm/ci/meta/JavaConstant;
17 41 7 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;
20 22 8 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
23 25 8 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
26 28 8 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
29 31 8 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
32 34 8 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
35 37 8 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
38 41 8 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
21 22 9 imm J
24 25 9 imm J
27 28 9 imm J
30 31 9 imm J
33 34 9 imm J
36 37 9 imm J
38 41 9 imm J
MethodParameters:
Name Flags
kind
address
value
state
protected void emitStore(jdk.vm.ci.amd64.AMD64Kind, org.graalvm.compiler.lir.amd64.AMD64AddressValue, jdk.vm.ci.meta.AllocatableValue, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/amd64/AMD64Kind;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 1 - 6
1: 1
2: 3
3: 5
4: 7
5: 9
6: 11
default: 13
}
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryMROp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MROp.MOVB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.BYTE:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 3
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryMROp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: goto 14
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryMROp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MROp.MOV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.WORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 3
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryMROp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
4: goto 14
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryMROp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MROp.MOV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 3
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryMROp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: goto 14
7: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryMROp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MROp.MOV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 3
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryMROp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
8: goto 14
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryMROp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MROp.MOVSS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 3
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryMROp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
10: goto 14
11: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryMROp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MROp.MOVSD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.SD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 3
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryMROp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MROp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
12: goto 14
13: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
14: StackMap locals:
StackMap stack:
return
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/AMD64ArithmeticLIRGenerator;
0 15 1 kind Ljdk/vm/ci/amd64/AMD64Kind;
0 15 2 address Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
0 15 3 value Ljdk/vm/ci/meta/AllocatableValue;
0 15 4 state Lorg/graalvm/compiler/lir/LIRFrameState;
MethodParameters:
Name Flags
kind
address
value
state
public void emitStore(jdk.vm.ci.meta.ValueKind<?>, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getAMD64LIRGen:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
astore 5
start local 5 1: aload 1
invokevirtual jdk.vm.ci.meta.ValueKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
astore 6
start local 6 2: aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isConstantValue:(Ljdk/vm/ci/meta/Value;)Z
ifeq 5
3: aload 0
aload 6
aload 5
aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asConstantValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/ConstantValue;
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitStoreConst:(Ljdk/vm/ci/amd64/AMD64Kind;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/ConstantValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
4: goto 6
5: StackMap locals: org.graalvm.compiler.lir.amd64.AMD64AddressValue jdk.vm.ci.amd64.AMD64Kind
StackMap stack:
aload 0
aload 6
aload 5
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 3
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 4
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
6: StackMap locals:
StackMap stack:
return
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 7 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 7 1 lirKind Ljdk/vm/ci/meta/ValueKind<*>;
0 7 2 address Ljdk/vm/ci/meta/Value;
0 7 3 input Ljdk/vm/ci/meta/Value;
0 7 4 state Lorg/graalvm/compiler/lir/LIRFrameState;
1 7 5 storeAddress Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
2 7 6 kind Ljdk/vm/ci/amd64/AMD64Kind;
Signature: (Ljdk/vm/ci/meta/ValueKind<*>;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
MethodParameters:
Name Flags
lirKind
address
input
state
public void emitCompareOp(jdk.vm.ci.amd64.AMD64Kind, org.graalvm.compiler.lir.Variable, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/amd64/AMD64Kind;Lorg/graalvm/compiler/lir/Variable;Ljdk/vm/ci/meta/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: invokestatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 1 - 6
1: 1
2: 3
3: 5
4: 7
5: 9
6: 11
default: 13
}
1: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.BYTE:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
astore 4
start local 4 2: goto 14
end local 4 3: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.WORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
astore 4
start local 4 4: goto 14
end local 4 5: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
astore 4
start local 4 6: goto 14
end local 4 7: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
astore 4
start local 4 8: goto 14
end local 4 9: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$Op
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.UCOMIS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 3
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$Op.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
10: return
11: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$Op
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp.UCOMIS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$SSEOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 3
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$Op.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
12: return
13: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "unexpected kind: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
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
start local 4 14: StackMap locals: org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize
StackMap stack:
aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isConstantValue:(Ljdk/vm/ci/meta/Value;)Z
ifeq 37
15: aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Constant;
astore 5
start local 5 16: aload 5
invokestatic jdk.vm.ci.meta.JavaConstant.isNull:(Ljdk/vm/ci/meta/Constant;)Z
ifeq 19
17: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$Op
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.TEST:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
aload 4
aload 2
aload 2
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$Op.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
18: return
19: StackMap locals: jdk.vm.ci.meta.Constant
StackMap stack:
aload 5
instanceof jdk.vm.ci.meta.VMConstant
ifeq 26
20: aload 5
checkcast jdk.vm.ci.meta.VMConstant
astore 6
start local 6 21: aload 4
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
if_acmpne 24
getstatic org.graalvm.compiler.core.common.GraalOptions.GeneratePIC:Lorg/graalvm/compiler/options/OptionKey;
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifne 24
22: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$VMConstOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.CMP:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getMIOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Z)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;
aload 2
aload 6
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$VMConstOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/VMConstant;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
23: goto 25
24: StackMap locals: jdk.vm.ci.meta.VMConstant
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$DataOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.CMP:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
aload 4
invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getRMOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
aload 4
aload 2
aload 6
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$DataOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Constant;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
25: StackMap locals:
StackMap stack:
return
end local 6 26: StackMap locals:
StackMap stack:
aload 5
instanceof jdk.vm.ci.meta.JavaConstant
ifeq 37
27: aload 5
checkcast jdk.vm.ci.meta.JavaConstant
astore 6
start local 6 28: aload 6
invokeinterface jdk.vm.ci.meta.JavaConstant.isDefaultForKind:()Z
ifeq 34
29: aload 4
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.BYTE:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
if_acmpne 30
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.TESTB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
goto 31
StackMap locals: jdk.vm.ci.meta.JavaConstant
StackMap stack:
30: getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.TEST:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
StackMap locals:
StackMap stack: org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp
31: astore 7
start local 7 32: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$Op
dup
aload 7
aload 4
aload 2
aload 2
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$Op.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
33: return
end local 7 34: StackMap locals:
StackMap stack:
aload 6
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
invokestatic org.graalvm.compiler.core.common.NumUtil.is32bit:(J)Z
ifeq 37
35: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$ConstOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.CMP:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
aload 4
aload 2
aload 6
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
l2i
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$ConstOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;I)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
36: return
end local 6 end local 5 37: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$Op
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.CMP:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
aload 4
invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getRMOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
aload 4
aload 2
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 3
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$Op.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
38: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 39 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 39 1 cmpKind Ljdk/vm/ci/amd64/AMD64Kind;
0 39 2 left Lorg/graalvm/compiler/lir/Variable;
0 39 3 right Ljdk/vm/ci/meta/Value;
2 3 4 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
4 5 4 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
6 7 4 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
8 9 4 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
14 39 4 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
16 37 5 c Ljdk/vm/ci/meta/Constant;
21 26 6 vc Ljdk/vm/ci/meta/VMConstant;
28 37 6 jc Ljdk/vm/ci/meta/JavaConstant;
32 34 7 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
MethodParameters:
Name Flags
cmpKind
left
right
public jdk.vm.ci.meta.Value emitRound(jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.amd64.AMD64ArithmeticLIRGeneratorTool$RoundingMode);
descriptor: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/amd64/AMD64ArithmeticLIRGeneratorTool$RoundingMode;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 1
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 3
start local 3 1: getstatic org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.$assertionsDisabled:Z
ifne 2
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.isXMM:()Z
ifne 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: org.graalvm.compiler.lir.Variable
StackMap stack:
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.SINGLE:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpne 5
3: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$RMIOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMIOp.ROUNDSS:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMIOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 3
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 2
getfield org.graalvm.compiler.lir.amd64.AMD64ArithmeticLIRGeneratorTool$RoundingMode.encoding:I
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$RMIOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMIOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;I)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
4: goto 6
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
new org.graalvm.compiler.lir.amd64.AMD64Binary$RMIOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMIOp.ROUNDSD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMIOp;
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.PD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 3
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 2
getfield org.graalvm.compiler.lir.amd64.AMD64ArithmeticLIRGeneratorTool$RoundingMode.encoding:I
invokespecial org.graalvm.compiler.lir.amd64.AMD64Binary$RMIOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMIOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;I)V
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 7 1 value Ljdk/vm/ci/meta/Value;
0 7 2 mode Lorg/graalvm/compiler/lir/amd64/AMD64ArithmeticLIRGeneratorTool$RoundingMode;
1 7 3 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
value
mode
public jdk.vm.ci.meta.Value emitShr(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitShr:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
LocalVariableTable:
Start End Slot Name Signature
public jdk.vm.ci.meta.Value emitShl(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitShl:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
LocalVariableTable:
Start End Slot Name Signature
public jdk.vm.ci.meta.Value emitOr(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitOr:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
LocalVariableTable:
Start End Slot Name Signature
public jdk.vm.ci.meta.Value emitBitScanForward(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBitScanForward:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
LocalVariableTable:
Start End Slot Name Signature
public jdk.vm.ci.meta.Value emitNegate(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitNegate:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
LocalVariableTable:
Start End Slot Name Signature
public jdk.vm.ci.meta.Value emitURem(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitURem:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/Variable;
areturn
LocalVariableTable:
Start End Slot Name Signature
public jdk.vm.ci.meta.Value emitUShr(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitUShr:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
LocalVariableTable:
Start End Slot Name Signature
public jdk.vm.ci.meta.Value emitMul(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Ljdk/vm/ci/meta/Value;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
aload 2
iload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitMul:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
areturn
LocalVariableTable:
Start End Slot Name Signature
public jdk.vm.ci.meta.Value emitAnd(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitAnd:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
LocalVariableTable:
Start End Slot Name Signature
public jdk.vm.ci.meta.Value emitBitScanReverse(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBitScanReverse:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
LocalVariableTable:
Start End Slot Name Signature
public jdk.vm.ci.meta.Value emitBitCount(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitBitCount:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
LocalVariableTable:
Start End Slot Name Signature
public jdk.vm.ci.meta.Value emitNot(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitNot:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
LocalVariableTable:
Start End Slot Name Signature
public jdk.vm.ci.meta.Value emitXor(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitXor:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
LocalVariableTable:
Start End Slot Name Signature
public jdk.vm.ci.meta.Value emitUDiv(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.emitUDiv:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/Variable;
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.AMD64ArithmeticLIRGenerator.$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.AMD64ArithmeticLIRGenerator.$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 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.AMD64ArithmeticLIRGenerator.$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.AMD64ArithmeticLIRGenerator.$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
}
SourceFile: "AMD64ArithmeticLIRGenerator.java"
InnerClasses:
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 AMD64MOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
public AMD64MROp = org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MROp of org.graalvm.compiler.asm.amd64.AMD64Assembler
public AMD64RMIOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMIOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
public AMD64RMOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
public AMD64RRMOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RRMOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
public final AMD64Shift = org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64Shift of org.graalvm.compiler.asm.amd64.AMD64Assembler
public AVXOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$AVXOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
public OperandSize = org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize of org.graalvm.compiler.asm.amd64.AMD64Assembler
public SSEOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$SSEOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
public FPDivRemOp = org.graalvm.compiler.lir.amd64.AMD64Arithmetic$FPDivRemOp of org.graalvm.compiler.lir.amd64.AMD64Arithmetic
public final RoundingMode = org.graalvm.compiler.lir.amd64.AMD64ArithmeticLIRGeneratorTool$RoundingMode of org.graalvm.compiler.lir.amd64.AMD64ArithmeticLIRGeneratorTool
public CommutativeThreeOp = org.graalvm.compiler.lir.amd64.AMD64Binary$CommutativeThreeOp of org.graalvm.compiler.lir.amd64.AMD64Binary
public CommutativeTwoOp = org.graalvm.compiler.lir.amd64.AMD64Binary$CommutativeTwoOp of org.graalvm.compiler.lir.amd64.AMD64Binary
public ConstOp = org.graalvm.compiler.lir.amd64.AMD64Binary$ConstOp of org.graalvm.compiler.lir.amd64.AMD64Binary
public DataThreeOp = org.graalvm.compiler.lir.amd64.AMD64Binary$DataThreeOp of org.graalvm.compiler.lir.amd64.AMD64Binary
public DataTwoOp = org.graalvm.compiler.lir.amd64.AMD64Binary$DataTwoOp of org.graalvm.compiler.lir.amd64.AMD64Binary
public MemoryThreeOp = org.graalvm.compiler.lir.amd64.AMD64Binary$MemoryThreeOp of org.graalvm.compiler.lir.amd64.AMD64Binary
public MemoryTwoOp = org.graalvm.compiler.lir.amd64.AMD64Binary$MemoryTwoOp of org.graalvm.compiler.lir.amd64.AMD64Binary
public RMIOp = org.graalvm.compiler.lir.amd64.AMD64Binary$RMIOp of org.graalvm.compiler.lir.amd64.AMD64Binary
public ThreeOp = org.graalvm.compiler.lir.amd64.AMD64Binary$ThreeOp of org.graalvm.compiler.lir.amd64.AMD64Binary
public TwoOp = org.graalvm.compiler.lir.amd64.AMD64Binary$TwoOp of org.graalvm.compiler.lir.amd64.AMD64Binary
public ConstOp = org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$ConstOp of org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer
public DataOp = org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$DataOp of org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer
public MemoryConstOp = org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryConstOp of org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer
public MemoryMROp = org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryMROp of org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer
public MemoryVMConstOp = org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryVMConstOp of org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer
public Op = org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$Op of org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer
public VMConstOp = org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$VMConstOp of org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer
public final BinaryIntrinsicOpcode = org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicBinaryOp$BinaryIntrinsicOpcode of org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicBinaryOp
public final UnaryIntrinsicOpcode = org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp$UnaryIntrinsicOpcode of org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicUnaryOp
public final LeaOp = org.graalvm.compiler.lir.amd64.AMD64Move$LeaOp of org.graalvm.compiler.lir.amd64.AMD64Move
public MOp = org.graalvm.compiler.lir.amd64.AMD64Unary$MOp of org.graalvm.compiler.lir.amd64.AMD64Unary
public MROp = org.graalvm.compiler.lir.amd64.AMD64Unary$MROp of org.graalvm.compiler.lir.amd64.AMD64Unary
public MemoryOp = org.graalvm.compiler.lir.amd64.AMD64Unary$MemoryOp of org.graalvm.compiler.lir.amd64.AMD64Unary
public RMOp = org.graalvm.compiler.lir.amd64.AMD64Unary$RMOp of org.graalvm.compiler.lir.amd64.AMD64Unary