public abstract class org.graalvm.compiler.core.amd64.AMD64LIRGenerator extends org.graalvm.compiler.lir.gen.LIRGenerator
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.graalvm.compiler.core.amd64.AMD64LIRGenerator
super_class: org.graalvm.compiler.lir.gen.LIRGenerator
{
private static volatile int[] $SWITCH_TABLE$jdk$vm$ci$meta$JavaKind;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
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.AMD64LIRGenerator.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.graalvm.compiler.core.common.spi.LIRKindTool, org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator, org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory, org.graalvm.compiler.phases.util.Providers, org.graalvm.compiler.lir.gen.LIRGenerationResult);
descriptor: (Lorg/graalvm/compiler/core/common/spi/LIRKindTool;Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
aload 2
aload 3
aload 4
aload 5
invokespecial org.graalvm.compiler.lir.gen.LIRGenerator.<init>:(Lorg/graalvm/compiler/core/common/spi/LIRKindTool;Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGenerator;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;Lorg/graalvm/compiler/core/common/spi/CodeGenProviders;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;)V
1: 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 2 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 2 1 lirKindTool Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
0 2 2 arithmeticLIRGen Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 2 3 moveFactory Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
0 2 4 providers Lorg/graalvm/compiler/phases/util/Providers;
0 2 5 lirGenRes Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
MethodParameters:
Name Flags
lirKindTool
arithmeticLIRGen
moveFactory
providers
lirGenRes
protected static final boolean canStoreConstant(jdk.vm.ci.meta.JavaConstant);
descriptor: (Ljdk/vm/ci/meta/JavaConstant;)Z
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: invokestatic org.graalvm.compiler.core.amd64.AMD64LIRGenerator.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:()[I
aload 0
invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
iaload
tableswitch { // 7 - 9
7: 1
8: 2
9: 3
default: 4
}
1: StackMap locals:
StackMap stack:
aload 0
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
invokestatic org.graalvm.compiler.core.common.NumUtil.isInt:(J)Z
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
3: StackMap locals:
StackMap stack:
aload 0
invokeinterface jdk.vm.ci.meta.JavaConstant.isNull:()Z
ireturn
4: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 c Ljdk/vm/ci/meta/JavaConstant;
MethodParameters:
Name Flags
c
protected jdk.vm.ci.meta.JavaConstant zapValueForKind(jdk.vm.ci.meta.PlatformKind);
descriptor: (Ljdk/vm/ci/meta/PlatformKind;)Ljdk/vm/ci/meta/JavaConstant;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: ldc -2401018187971961171
lstore 2
start local 2 1: invokestatic org.graalvm.compiler.core.amd64.AMD64LIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 1 - 5
1: 2
2: 3
3: 4
4: 5
5: 6
default: 7
}
2: StackMap locals: long
StackMap stack:
lload 2
l2i
i2b
invokestatic jdk.vm.ci.meta.JavaConstant.forByte:(B)Ljdk/vm/ci/meta/PrimitiveConstant;
areturn
3: StackMap locals:
StackMap stack:
lload 2
l2i
i2s
invokestatic jdk.vm.ci.meta.JavaConstant.forShort:(S)Ljdk/vm/ci/meta/PrimitiveConstant;
areturn
4: StackMap locals:
StackMap stack:
lload 2
l2i
invokestatic jdk.vm.ci.meta.JavaConstant.forInt:(I)Ljdk/vm/ci/meta/PrimitiveConstant;
areturn
5: StackMap locals:
StackMap stack:
lload 2
invokestatic jdk.vm.ci.meta.JavaConstant.forLong:(J)Ljdk/vm/ci/meta/PrimitiveConstant;
areturn
6: StackMap locals:
StackMap stack:
lload 2
l2i
invokestatic java.lang.Float.intBitsToFloat:(I)F
invokestatic jdk.vm.ci.meta.JavaConstant.forFloat:(F)Ljdk/vm/ci/meta/PrimitiveConstant;
areturn
7: StackMap locals:
StackMap stack:
lload 2
invokestatic java.lang.Double.longBitsToDouble:(J)D
invokestatic jdk.vm.ci.meta.JavaConstant.forDouble:(D)Ljdk/vm/ci/meta/PrimitiveConstant;
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/AMD64LIRGenerator;
0 8 1 kind Ljdk/vm/ci/meta/PlatformKind;
1 8 2 dead J
MethodParameters:
Name Flags
kind
public org.graalvm.compiler.lir.amd64.AMD64AddressValue asAddressValue(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.graalvm.compiler.lir.amd64.AMD64AddressValue
ifeq 2
1: aload 1
checkcast org.graalvm.compiler.lir.amd64.AMD64AddressValue
areturn
2: StackMap locals:
StackMap stack:
aload 1
instanceof jdk.vm.ci.meta.JavaConstant
ifeq 6
3: aload 1
checkcast jdk.vm.ci.meta.JavaConstant
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lstore 2
start local 2 4: lload 2
invokestatic org.graalvm.compiler.core.common.NumUtil.isInt:(J)Z
ifeq 6
5: new org.graalvm.compiler.lir.amd64.AMD64AddressValue
dup
aload 1
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
lload 2
l2i
invokespecial org.graalvm.compiler.lir.amd64.AMD64AddressValue.<init>:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/AllocatableValue;I)V
areturn
end local 2 6: StackMap locals:
StackMap stack:
new org.graalvm.compiler.lir.amd64.AMD64AddressValue
dup
aload 1
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
iconst_0
invokespecial org.graalvm.compiler.lir.amd64.AMD64AddressValue.<init>:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/AllocatableValue;I)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 7 1 address Ljdk/vm/ci/meta/Value;
4 6 2 displacement J
MethodParameters:
Name Flags
address
public org.graalvm.compiler.lir.Variable emitAddress(jdk.vm.ci.meta.AllocatableValue);
descriptor: (Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
invokevirtual jdk.vm.ci.code.Architecture.getWordKind:()Ljdk/vm/ci/meta/PlatformKind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 2
start local 2 1: aload 0
new org.graalvm.compiler.lir.amd64.AMD64Move$StackLeaOp
dup
aload 2
aload 1
invokespecial org.graalvm.compiler.lir.amd64.AMD64Move$StackLeaOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.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/AMD64LIRGenerator;
0 3 1 stackslot Ljdk/vm/ci/meta/AllocatableValue;
1 3 2 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
stackslot
public <K extends jdk.vm.ci.meta.ValueKind<K>> K toRegisterKind();
descriptor: (Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/meta/ValueKind;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: invokestatic org.graalvm.compiler.core.amd64.AMD64LIRGenerator.$SWITCH_TABLE$jdk$vm$ci$amd64$AMD64Kind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.ValueKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
invokevirtual jdk.vm.ci.amd64.AMD64Kind.ordinal:()I
iaload
tableswitch { // 1 - 2
1: 1
2: 1
default: 2
}
1: StackMap locals:
StackMap stack:
aload 1
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual jdk.vm.ci.meta.ValueKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Ljdk/vm/ci/meta/ValueKind;
areturn
2: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 3 1 kind TK;
Signature: <K:Ljdk/vm/ci/meta/ValueKind<TK;>;>(TK;)TK;
MethodParameters:
Name Flags
kind
private jdk.vm.ci.meta.AllocatableValue asAllocatable(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.ValueKind<?>);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/meta/AllocatableValue;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
aload 2
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 2
1: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 4
3: aload 1
invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
aload 2
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
areturn
4: StackMap locals:
StackMap stack:
aload 1
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isConstantValue:(Ljdk/vm/ci/meta/Value;)Z
ifeq 6
5: aload 0
aload 2
aload 1
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Constant;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitLoadConstant:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Constant;)Ljdk/vm/ci/meta/AllocatableValue;
areturn
6: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 3
start local 3 7: aload 0
aload 3
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
8: 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/AMD64LIRGenerator;
0 9 1 value Ljdk/vm/ci/meta/Value;
0 9 2 kind Ljdk/vm/ci/meta/ValueKind<*>;
7 9 3 variable Lorg/graalvm/compiler/lir/Variable;
Signature: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind<*>;)Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
value
kind
private jdk.vm.ci.meta.Value emitCompareAndSwap(boolean, org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (ZLorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=18, 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 5
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
astore 8
start local 8 1: getstatic org.graalvm.compiler.core.amd64.AMD64LIRGenerator.$assertionsDisabled:Z
ifne 2
aload 8
aload 4
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: jdk.vm.ci.meta.ValueKind
StackMap stack:
aload 0
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
astore 9
start local 9 3: aload 2
astore 10
start local 10 4: aload 4
astore 11
start local 11 5: aload 5
astore 12
start local 12 6: aload 2
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.isXMM:()Z
istore 13
start local 13 7: iload 13
ifeq 14
8: aload 2
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
getstatic jdk.vm.ci.amd64.AMD64Kind.SINGLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 11
9: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
invokestatic org.graalvm.compiler.core.common.LIRKind.fromJavaKind:(Ljdk/vm/ci/code/Architecture;Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 10
10: goto 12
11: StackMap locals: org.graalvm.compiler.core.amd64.AMD64LIRGenerator int org.graalvm.compiler.core.common.LIRKind jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.ValueKind org.graalvm.compiler.lir.amd64.AMD64AddressValue org.graalvm.compiler.core.common.LIRKind jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value int
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
getstatic jdk.vm.ci.meta.JavaKind.Long:Ljdk/vm/ci/meta/JavaKind;
invokestatic org.graalvm.compiler.core.common.LIRKind.fromJavaKind:(Ljdk/vm/ci/code/Architecture;Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 10
12: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.core.amd64.AMD64LIRGenerator.arithmeticLIRGen:Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGenerator;
aload 10
aload 4
invokevirtual org.graalvm.compiler.lir.gen.ArithmeticLIRGenerator.emitReinterpret:(Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
astore 11
13: aload 0
getfield org.graalvm.compiler.core.amd64.AMD64LIRGenerator.arithmeticLIRGen:Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGenerator;
aload 10
aload 5
invokevirtual org.graalvm.compiler.lir.gen.ArithmeticLIRGenerator.emitReinterpret:(Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
astore 12
14: StackMap locals:
StackMap stack:
aload 10
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
astore 14
start local 14 15: getstatic jdk.vm.ci.amd64.AMD64.rax:Ljdk/vm/ci/code/Register;
aload 10
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
astore 15
start local 15 16: aload 0
aload 12
aload 10
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/meta/AllocatableValue;
astore 16
start local 16 17: aload 0
aload 15
aload 11
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
18: aload 0
new org.graalvm.compiler.lir.amd64.AMD64Move$CompareAndSwapOp
dup
aload 14
aload 15
aload 9
aload 15
aload 16
invokespecial org.graalvm.compiler.lir.amd64.AMD64Move$CompareAndSwapOp.<init>:(Ljdk/vm/ci/amd64/AMD64Kind;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
19: iload 1
ifeq 24
20: getstatic org.graalvm.compiler.core.amd64.AMD64LIRGenerator.$assertionsDisabled:Z
ifne 21
aload 6
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
aload 7
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 21
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
21: StackMap locals: jdk.vm.ci.amd64.AMD64Kind jdk.vm.ci.code.RegisterValue jdk.vm.ci.meta.AllocatableValue
StackMap stack:
aload 0
aload 6
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 17
start local 17 22: aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$CondMoveOp
dup
aload 17
getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
aload 0
aload 6
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 7
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$CondMoveOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/core/common/calc/Condition;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
23: aload 17
areturn
end local 17 24: StackMap locals:
StackMap stack:
iload 13
ifeq 26
25: aload 0
getfield org.graalvm.compiler.core.amd64.AMD64LIRGenerator.arithmeticLIRGen:Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGenerator;
aload 2
aload 15
invokevirtual org.graalvm.compiler.lir.gen.ArithmeticLIRGenerator.emitReinterpret:(Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
areturn
26: StackMap locals:
StackMap stack:
aload 0
aload 8
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 17
start local 17 27: aload 0
aload 17
aload 15
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
28: aload 17
areturn
end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 29 1 isLogic Z
0 29 2 accessKind Lorg/graalvm/compiler/core/common/LIRKind;
0 29 3 address Ljdk/vm/ci/meta/Value;
0 29 4 expectedValue Ljdk/vm/ci/meta/Value;
0 29 5 newValue Ljdk/vm/ci/meta/Value;
0 29 6 trueValue Ljdk/vm/ci/meta/Value;
0 29 7 falseValue Ljdk/vm/ci/meta/Value;
1 29 8 kind Ljdk/vm/ci/meta/ValueKind<*>;
3 29 9 addressValue Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
4 29 10 integralAccessKind Lorg/graalvm/compiler/core/common/LIRKind;
5 29 11 reinterpretedExpectedValue Ljdk/vm/ci/meta/Value;
6 29 12 reinterpretedNewValue Ljdk/vm/ci/meta/Value;
7 29 13 isXmm Z
15 29 14 memKind Ljdk/vm/ci/amd64/AMD64Kind;
16 29 15 aRes Ljdk/vm/ci/code/RegisterValue;
17 29 16 allocatableNewValue Ljdk/vm/ci/meta/AllocatableValue;
22 24 17 result Lorg/graalvm/compiler/lir/Variable;
27 29 17 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
isLogic
accessKind
address
expectedValue
newValue
trueValue
falseValue
public org.graalvm.compiler.lir.Variable emitLogicCompareAndSwap(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
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 0
iconst_1
aload 1
aload 2
aload 3
aload 4
aload 5
aload 6
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitCompareAndSwap:(ZLorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
checkcast org.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 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 1 1 accessKind Lorg/graalvm/compiler/core/common/LIRKind;
0 1 2 address Ljdk/vm/ci/meta/Value;
0 1 3 expectedValue Ljdk/vm/ci/meta/Value;
0 1 4 newValue Ljdk/vm/ci/meta/Value;
0 1 5 trueValue Ljdk/vm/ci/meta/Value;
0 1 6 falseValue Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
accessKind
address
expectedValue
newValue
trueValue
falseValue
public jdk.vm.ci.meta.Value emitValueCompareAndSwap(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iconst_0
aload 1
aload 2
aload 3
aload 4
aconst_null
aconst_null
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitCompareAndSwap:(ZLorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 1 1 accessKind Lorg/graalvm/compiler/core/common/LIRKind;
0 1 2 address Ljdk/vm/ci/meta/Value;
0 1 3 expectedValue Ljdk/vm/ci/meta/Value;
0 1 4 newValue Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
accessKind
address
expectedValue
newValue
public void emitCompareAndSwapBranch(jdk.vm.ci.meta.ValueKind<?>, org.graalvm.compiler.lir.amd64.AMD64AddressValue, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.core.common.calc.Condition, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef, );
descriptor: (Ljdk/vm/ci/meta/ValueKind;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=12, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: getstatic org.graalvm.compiler.core.amd64.AMD64LIRGenerator.$assertionsDisabled:Z
ifne 1
aload 1
aload 3
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.amd64.AMD64LIRGenerator.$assertionsDisabled:Z
ifne 2
aload 1
aload 4
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.amd64.AMD64LIRGenerator.$assertionsDisabled:Z
ifne 3
aload 5
getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
if_acmpeq 3
aload 5
getstatic org.graalvm.compiler.core.common.calc.Condition.NE:Lorg/graalvm/compiler/core/common/calc/Condition;
if_acmpeq 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals:
StackMap stack:
aload 1
invokevirtual jdk.vm.ci.meta.ValueKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
astore 10
start local 10 4: getstatic jdk.vm.ci.amd64.AMD64.rax:Ljdk/vm/ci/code/Register;
aload 1
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
astore 11
start local 11 5: aload 0
aload 11
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
6: aload 0
new org.graalvm.compiler.lir.amd64.AMD64Move$CompareAndSwapOp
dup
aload 10
aload 11
aload 2
aload 11
aload 0
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Move$CompareAndSwapOp.<init>:(Ljdk/vm/ci/amd64/AMD64Kind;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
7: aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp
dup
aload 5
aload 6
aload 7
dload 8
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp.<init>:(Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
8: return
end local 11 end local 10 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 9 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 9 1 kind Ljdk/vm/ci/meta/ValueKind<*>;
0 9 2 address Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
0 9 3 expectedValue Ljdk/vm/ci/meta/Value;
0 9 4 newValue Ljdk/vm/ci/meta/Value;
0 9 5 condition Lorg/graalvm/compiler/core/common/calc/Condition;
0 9 6 trueLabel Lorg/graalvm/compiler/lir/LabelRef;
0 9 7 falseLabel Lorg/graalvm/compiler/lir/LabelRef;
0 9 8 trueLabelProbability D
4 9 10 memKind Ljdk/vm/ci/amd64/AMD64Kind;
5 9 11 raxValue Ljdk/vm/ci/code/RegisterValue;
Signature: (Ljdk/vm/ci/meta/ValueKind<*>;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
MethodParameters:
Name Flags
kind
address
expectedValue
newValue
condition
trueLabel
falseLabel
trueLabelProbability
public jdk.vm.ci.meta.Value emitAtomicReadAndAdd(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.ValueKind<?>, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
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
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 4
start local 4 1: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
astore 5
start local 5 2: aload 0
new org.graalvm.compiler.lir.amd64.AMD64Move$AtomicReadAndAddOp
dup
aload 2
invokevirtual jdk.vm.ci.meta.ValueKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
aload 4
aload 5
aload 0
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Move$AtomicReadAndAddOp.<init>:(Ljdk/vm/ci/amd64/AMD64Kind;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: aload 4
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 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 4 1 address Ljdk/vm/ci/meta/Value;
0 4 2 kind Ljdk/vm/ci/meta/ValueKind<*>;
0 4 3 delta Ljdk/vm/ci/meta/Value;
1 4 4 result Lorg/graalvm/compiler/lir/Variable;
2 4 5 addressValue Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
Signature: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind<*>;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
address
kind
delta
public jdk.vm.ci.meta.Value emitAtomicReadAndWrite(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.ValueKind<?>, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
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
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 4
start local 4 1: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
astore 5
start local 5 2: aload 0
new org.graalvm.compiler.lir.amd64.AMD64Move$AtomicReadAndWriteOp
dup
aload 2
invokevirtual jdk.vm.ci.meta.ValueKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.amd64.AMD64Kind
aload 4
aload 5
aload 0
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Move$AtomicReadAndWriteOp.<init>:(Ljdk/vm/ci/amd64/AMD64Kind;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: aload 4
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 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 4 1 address Ljdk/vm/ci/meta/Value;
0 4 2 kind Ljdk/vm/ci/meta/ValueKind<*>;
0 4 3 newValue Ljdk/vm/ci/meta/Value;
1 4 4 result Lorg/graalvm/compiler/lir/Variable;
2 4 5 addressValue Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
Signature: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind<*>;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
address
kind
newValue
public void emitNullCheck(jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
new org.graalvm.compiler.lir.amd64.AMD64Move$NullCheckOp
dup
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
aload 2
invokespecial org.graalvm.compiler.lir.amd64.AMD64Move$NullCheckOp.<init>:(Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 2 1 address Ljdk/vm/ci/meta/Value;
0 2 2 state Lorg/graalvm/compiler/lir/LIRFrameState;
MethodParameters:
Name Flags
address
state
public void emitJump(org.graalvm.compiler.lir.LabelRef);
descriptor: (Lorg/graalvm/compiler/lir/LabelRef;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.graalvm.compiler.core.amd64.AMD64LIRGenerator.$assertionsDisabled:Z
ifne 1
aload 1
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
new org.graalvm.compiler.lir.StandardOp$JumpOp
dup
aload 1
invokespecial org.graalvm.compiler.lir.StandardOp$JumpOp.<init>:(Lorg/graalvm/compiler/lir/LabelRef;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 3 1 label Lorg/graalvm/compiler/lir/LabelRef;
MethodParameters:
Name Flags
label
public void emitCompareBranch(jdk.vm.ci.meta.PlatformKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.core.common.calc.Condition, boolean, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef, double);
descriptor: (Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;ZLorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=11, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 0
aload 1
aload 2
aload 3
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitCompare:(Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;)Lorg/graalvm/compiler/core/common/calc/Condition;
astore 10
start local 10 1: aload 1
getstatic jdk.vm.ci.amd64.AMD64Kind.SINGLE:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpeq 2
aload 1
getstatic jdk.vm.ci.amd64.AMD64Kind.DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpne 4
2: StackMap locals: org.graalvm.compiler.core.common.calc.Condition
StackMap stack:
aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$FloatBranchOp
dup
aload 10
iload 5
aload 6
aload 7
dload 8
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$FloatBranchOp.<init>:(Lorg/graalvm/compiler/core/common/calc/Condition;ZLorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: goto 5
4: StackMap locals:
StackMap stack:
aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp
dup
aload 10
aload 6
aload 7
dload 8
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp.<init>:(Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
5: StackMap locals:
StackMap stack:
return
end local 10 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 6 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 6 1 cmpKind Ljdk/vm/ci/meta/PlatformKind;
0 6 2 left Ljdk/vm/ci/meta/Value;
0 6 3 right Ljdk/vm/ci/meta/Value;
0 6 4 cond Lorg/graalvm/compiler/core/common/calc/Condition;
0 6 5 unorderedIsTrue Z
0 6 6 trueLabel Lorg/graalvm/compiler/lir/LabelRef;
0 6 7 falseLabel Lorg/graalvm/compiler/lir/LabelRef;
0 6 8 trueLabelProbability D
1 6 10 finalCondition Lorg/graalvm/compiler/core/common/calc/Condition;
MethodParameters:
Name Flags
cmpKind
left
right
cond
unorderedIsTrue
trueLabel
falseLabel
trueLabelProbability
public void emitCompareBranchMemory(jdk.vm.ci.amd64.AMD64Kind, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.amd64.AMD64AddressValue, org.graalvm.compiler.lir.LIRFrameState, org.graalvm.compiler.core.common.calc.Condition, boolean, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef, double);
descriptor: (Ljdk/vm/ci/amd64/AMD64Kind;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;Lorg/graalvm/compiler/core/common/calc/Condition;ZLorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=13, args_size=10
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 0: aload 0
aload 1
aload 2
aload 3
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitCompareMemory:(Ljdk/vm/ci/amd64/AMD64Kind;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Z
istore 11
start local 11 1: iload 11
ifeq 2
aload 5
invokevirtual org.graalvm.compiler.core.common.calc.Condition.mirror:()Lorg/graalvm/compiler/core/common/calc/Condition;
goto 3
StackMap locals: int
StackMap stack:
2: aload 5
StackMap locals:
StackMap stack: org.graalvm.compiler.core.common.calc.Condition
3: astore 12
start local 12 4: aload 1
invokevirtual jdk.vm.ci.amd64.AMD64Kind.isXMM:()Z
ifeq 7
5: aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$FloatBranchOp
dup
aload 12
iload 6
aload 7
aload 8
dload 9
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$FloatBranchOp.<init>:(Lorg/graalvm/compiler/core/common/calc/Condition;ZLorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: goto 8
7: StackMap locals: org.graalvm.compiler.core.common.calc.Condition
StackMap stack:
aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp
dup
aload 12
aload 7
aload 8
dload 9
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp.<init>:(Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
8: StackMap locals:
StackMap stack:
return
end local 12 end local 11 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 9 1 cmpKind Ljdk/vm/ci/amd64/AMD64Kind;
0 9 2 left Ljdk/vm/ci/meta/Value;
0 9 3 right Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
0 9 4 state Lorg/graalvm/compiler/lir/LIRFrameState;
0 9 5 cond Lorg/graalvm/compiler/core/common/calc/Condition;
0 9 6 unorderedIsTrue Z
0 9 7 trueLabel Lorg/graalvm/compiler/lir/LabelRef;
0 9 8 falseLabel Lorg/graalvm/compiler/lir/LabelRef;
0 9 9 trueLabelProbability D
1 9 11 mirrored Z
4 9 12 finalCondition Lorg/graalvm/compiler/core/common/calc/Condition;
MethodParameters:
Name Flags
cmpKind
left
right
state
cond
unorderedIsTrue
trueLabel
falseLabel
trueLabelProbability
public void emitOverflowCheckBranch(org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.core.common.LIRKind, double);
descriptor: (Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/core/common/LIRKind;D)V
flags: (0x0001) ACC_PUBLIC
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
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Overflow:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 1
aload 2
dload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
1: return
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/AMD64LIRGenerator;
0 2 1 overflow Lorg/graalvm/compiler/lir/LabelRef;
0 2 2 noOverflow Lorg/graalvm/compiler/lir/LabelRef;
0 2 3 cmpLIRKind Lorg/graalvm/compiler/core/common/LIRKind;
0 2 4 overflowProbability D
MethodParameters:
Name Flags
overflow
noOverflow
cmpLIRKind
overflowProbability
public void emitIntegerTestBranch(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef, double);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
flags: (0x0001) ACC_PUBLIC
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
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitIntegerTest:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
1: aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp
dup
getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
aload 3
aload 4
dload 5
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp.<init>:(Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: 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 3 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 3 1 left Ljdk/vm/ci/meta/Value;
0 3 2 right Ljdk/vm/ci/meta/Value;
0 3 3 trueDestination Lorg/graalvm/compiler/lir/LabelRef;
0 3 4 falseDestination Lorg/graalvm/compiler/lir/LabelRef;
0 3 5 trueDestinationProbability D
MethodParameters:
Name Flags
left
right
trueDestination
falseDestination
trueDestinationProbability
public org.graalvm.compiler.lir.Variable emitConditionalMove(jdk.vm.ci.meta.PlatformKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.core.common.calc.Condition, boolean, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=15, 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 1
getstatic jdk.vm.ci.amd64.AMD64Kind.SINGLE:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpeq 1
aload 1
getstatic jdk.vm.ci.amd64.AMD64Kind.DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
if_acmpeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: istore 8
start local 8 3: aload 4
astore 9
start local 9 4: aload 6
astore 10
start local 10 5: aload 7
astore 11
start local 11 6: iload 8
ifeq 22
7: aload 2
astore 12
start local 12 8: aload 3
astore 13
start local 13 9: iload 5
aload 9
invokestatic org.graalvm.compiler.lir.amd64.AMD64ControlFlow.trueOnUnordered:(Lorg/graalvm/compiler/core/common/calc/Condition;)Z
if_icmpeq 20
10: iload 5
aload 9
invokevirtual org.graalvm.compiler.core.common.calc.Condition.mirror:()Lorg/graalvm/compiler/core/common/calc/Condition;
invokestatic org.graalvm.compiler.lir.amd64.AMD64ControlFlow.trueOnUnordered:(Lorg/graalvm/compiler/core/common/calc/Condition;)Z
if_icmpne 15
11: aload 9
invokevirtual org.graalvm.compiler.core.common.calc.Condition.mirror:()Lorg/graalvm/compiler/core/common/calc/Condition;
astore 9
12: aload 3
astore 12
13: aload 2
astore 13
14: goto 20
StackMap locals: org.graalvm.compiler.core.amd64.AMD64LIRGenerator jdk.vm.ci.meta.PlatformKind jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value org.graalvm.compiler.core.common.calc.Condition int jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value int org.graalvm.compiler.core.common.calc.Condition jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value
StackMap stack:
15: aload 9
getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
if_acmpeq 20
aload 9
getstatic org.graalvm.compiler.core.common.calc.Condition.NE:Lorg/graalvm/compiler/core/common/calc/Condition;
if_acmpeq 20
16: getstatic org.graalvm.compiler.core.amd64.AMD64LIRGenerator.$assertionsDisabled:Z
ifne 17
iload 5
aload 9
invokevirtual org.graalvm.compiler.core.common.calc.Condition.negate:()Lorg/graalvm/compiler/core/common/calc/Condition;
invokestatic org.graalvm.compiler.lir.amd64.AMD64ControlFlow.trueOnUnordered:(Lorg/graalvm/compiler/core/common/calc/Condition;)Z
if_icmpeq 17
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
17: StackMap locals:
StackMap stack:
aload 9
invokevirtual org.graalvm.compiler.core.common.calc.Condition.negate:()Lorg/graalvm/compiler/core/common/calc/Condition;
astore 9
18: aload 7
astore 10
19: aload 6
astore 11
20: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 12
aload 13
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitRawCompare:(Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
end local 13 end local 12 21: goto 23
22: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitCompare:(Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;)Lorg/graalvm/compiler/core/common/calc/Condition;
astore 9
23: StackMap locals:
StackMap stack:
iload 8
ifeq 24
iload 5
aload 9
invokestatic org.graalvm.compiler.lir.amd64.AMD64ControlFlow.trueOnUnordered:(Lorg/graalvm/compiler/core/common/calc/Condition;)Z
if_icmpeq 24
iconst_1
goto 25
StackMap locals:
StackMap stack:
24: iconst_0
StackMap locals:
StackMap stack: int
25: istore 12
start local 12 26: aload 0
aload 10
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 13
start local 13 27: iload 12
ifne 33
aload 10
lconst_1
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
ifeq 33
aload 11
lconst_0
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
ifeq 33
28: iload 8
ifeq 31
29: aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$FloatCondSetOp
dup
aload 13
aload 9
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$FloatCondSetOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/core/common/calc/Condition;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
30: goto 49
31: StackMap locals: int org.graalvm.compiler.lir.Variable
StackMap stack:
aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$CondSetOp
dup
aload 13
aload 9
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$CondSetOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/core/common/calc/Condition;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
32: goto 49
StackMap locals:
StackMap stack:
33: iload 12
ifne 45
aload 10
lconst_0
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
ifeq 45
aload 11
lconst_1
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
ifeq 45
34: iload 8
ifeq 43
35: iload 5
aload 9
invokevirtual org.graalvm.compiler.core.common.calc.Condition.negate:()Lorg/graalvm/compiler/core/common/calc/Condition;
invokestatic org.graalvm.compiler.lir.amd64.AMD64ControlFlow.trueOnUnordered:(Lorg/graalvm/compiler/core/common/calc/Condition;)Z
if_icmpne 38
36: aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$FloatCondSetOp
dup
aload 13
aload 9
invokevirtual org.graalvm.compiler.core.common.calc.Condition.negate:()Lorg/graalvm/compiler/core/common/calc/Condition;
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$FloatCondSetOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/core/common/calc/Condition;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
37: goto 49
38: StackMap locals:
StackMap stack:
aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$FloatCondSetOp
dup
aload 13
aload 9
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$FloatCondSetOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/core/common/calc/Condition;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
39: aload 0
aload 13
invokevirtual org.graalvm.compiler.lir.Variable.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 14
start local 14 40: aload 0
new org.graalvm.compiler.lir.amd64.AMD64Binary$ConstOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.XOR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
aload 13
invokevirtual org.graalvm.compiler.lir.Variable.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
invokestatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.get:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
aload 14
aload 13
iconst_1
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.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
41: aload 14
astore 13
end local 14 42: goto 49
43: StackMap locals:
StackMap stack:
aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$CondSetOp
dup
aload 13
aload 9
invokevirtual org.graalvm.compiler.core.common.calc.Condition.negate:()Lorg/graalvm/compiler/core/common/calc/Condition;
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$CondSetOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/core/common/calc/Condition;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
44: goto 49
StackMap locals:
StackMap stack:
45: iload 8
ifeq 48
46: aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$FloatCondMoveOp
dup
aload 13
aload 9
iload 5
aload 0
aload 10
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
aload 0
aload 11
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$FloatCondMoveOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/core/common/calc/Condition;ZLorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/lir/Variable;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
47: goto 49
48: StackMap locals:
StackMap stack:
aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$CondMoveOp
dup
aload 13
aload 9
aload 0
aload 10
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
aload 0
aload 11
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.loadNonConst:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$CondMoveOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/core/common/calc/Condition;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
49: StackMap locals:
StackMap stack:
aload 13
areturn
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 50 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 50 1 cmpKind Ljdk/vm/ci/meta/PlatformKind;
0 50 2 left Ljdk/vm/ci/meta/Value;
0 50 3 right Ljdk/vm/ci/meta/Value;
0 50 4 cond Lorg/graalvm/compiler/core/common/calc/Condition;
0 50 5 unorderedIsTrue Z
0 50 6 trueValue Ljdk/vm/ci/meta/Value;
0 50 7 falseValue Ljdk/vm/ci/meta/Value;
3 50 8 isFloatComparison Z
4 50 9 finalCondition Lorg/graalvm/compiler/core/common/calc/Condition;
5 50 10 finalTrueValue Ljdk/vm/ci/meta/Value;
6 50 11 finalFalseValue Ljdk/vm/ci/meta/Value;
8 21 12 finalLeft Ljdk/vm/ci/meta/Value;
9 21 13 finalRight Ljdk/vm/ci/meta/Value;
26 50 12 isParityCheckNecessary Z
27 50 13 result Lorg/graalvm/compiler/lir/Variable;
40 42 14 negatedResult Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
cmpKind
left
right
cond
unorderedIsTrue
trueValue
falseValue
public org.graalvm.compiler.lir.Variable emitIntegerTestMove(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, 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;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
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
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitIntegerTest:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
1: aload 0
aload 3
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 2: aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$CondMoveOp
dup
aload 5
getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
aload 0
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
aload 0
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.loadNonConst:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$CondMoveOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/core/common/calc/Condition;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: 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 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 4 1 left Ljdk/vm/ci/meta/Value;
0 4 2 right Ljdk/vm/ci/meta/Value;
0 4 3 trueValue Ljdk/vm/ci/meta/Value;
0 4 4 falseValue Ljdk/vm/ci/meta/Value;
2 4 5 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
left
right
trueValue
falseValue
private void emitIntegerTest(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=4, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.graalvm.compiler.core.amd64.AMD64LIRGenerator.$assertionsDisabled:Z
ifne 1
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 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
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 2
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
goto 3
StackMap locals:
StackMap stack:
2: getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
StackMap locals:
StackMap stack: org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize
3: astore 3
start local 3 4: aload 2
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 7
aload 2
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
invokestatic org.graalvm.compiler.core.common.NumUtil.is32bit:(J)Z
ifeq 7
5: aload 0
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$ConstOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MIOp.TEST:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;
aload 3
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 2
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
l2i
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$ConstOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;I)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: goto 14
StackMap locals: org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize
StackMap stack:
7: aload 1
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 10
aload 1
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
invokestatic org.graalvm.compiler.core.common.NumUtil.is32bit:(J)Z
ifeq 10
8: aload 0
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$ConstOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MIOp.TEST:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;
aload 3
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 1
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
l2i
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$ConstOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;I)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
9: goto 14
StackMap locals:
StackMap stack:
10: aload 2
invokestatic jdk.vm.ci.code.ValueUtil.isAllocatableValue:(Ljdk/vm/ci/meta/Value;)Z
ifeq 13
11: aload 0
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 3
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.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.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
12: goto 14
13: StackMap locals:
StackMap stack:
aload 0
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 3
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.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.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
14: StackMap locals:
StackMap stack:
return
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/AMD64LIRGenerator;
0 15 1 a Ljdk/vm/ci/meta/Value;
0 15 2 b Ljdk/vm/ci/meta/Value;
4 15 3 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
MethodParameters:
Name Flags
a
b
private boolean emitCompareMemory(jdk.vm.ci.amd64.AMD64Kind, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.amd64.AMD64AddressValue, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/amd64/AMD64Kind;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Z
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: invokestatic org.graalvm.compiler.core.amd64.AMD64LIRGenerator.$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 5
start local 5 2: goto 14
end local 5 3: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.WORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
astore 5
start local 5 4: goto 14
end local 5 5: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
astore 5
start local 5 6: goto 14
end local 5 7: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
astore 5
start local 5 8: goto 14
end local 5 9: StackMap locals:
StackMap stack:
aload 0
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryRMOp
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 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 3
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryRMOp.<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.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
10: iconst_0
ireturn
11: StackMap locals:
StackMap stack:
aload 0
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryRMOp
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 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 3
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryRMOp.<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.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
12: iconst_0
ireturn
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 5 14: StackMap locals: org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize
StackMap stack:
aload 2
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isConstantValue:(Ljdk/vm/ci/meta/Value;)Z
ifeq 16
15: aload 0
aload 5
aload 2
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asConstantValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/ConstantValue;
aload 3
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitCompareMemoryConOp:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/lir/ConstantValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Z
ireturn
16: StackMap locals:
StackMap stack:
aload 0
aload 5
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 3
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitCompareRegMemoryOp:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Z
ireturn
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/AMD64LIRGenerator;
0 17 1 cmpKind Ljdk/vm/ci/amd64/AMD64Kind;
0 17 2 a Ljdk/vm/ci/meta/Value;
0 17 3 b Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
0 17 4 state Lorg/graalvm/compiler/lir/LIRFrameState;
2 3 5 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
4 5 5 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
6 7 5 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
8 9 5 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
14 17 5 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
MethodParameters:
Name Flags
cmpKind
a
b
state
protected boolean emitCompareMemoryConOp(org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize, org.graalvm.compiler.lir.ConstantValue, org.graalvm.compiler.lir.amd64.AMD64AddressValue, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/lir/ConstantValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Z
flags: (0x0004) ACC_PROTECTED
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 2
invokevirtual org.graalvm.compiler.lir.ConstantValue.getConstant:()Ljdk/vm/ci/meta/Constant;
invokestatic jdk.vm.ci.meta.JavaConstant.isNull:(Ljdk/vm/ci/meta/Constant;)Z
ifeq 3
1: aload 0
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryConstOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.CMP:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
aload 1
aload 3
iconst_0
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryConstOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;ILorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: iconst_1
ireturn
3: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.graalvm.compiler.lir.ConstantValue.getConstant:()Ljdk/vm/ci/meta/Constant;
instanceof jdk.vm.ci.meta.VMConstant
ifeq 7
aload 1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
if_acmpne 7
4: aload 2
invokevirtual org.graalvm.compiler.lir.ConstantValue.getConstant:()Ljdk/vm/ci/meta/Constant;
checkcast jdk.vm.ci.meta.VMConstant
astore 5
start local 5 5: aload 0
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryVMConstOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.CMP:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
aload 1
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 3
aload 5
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.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: iconst_1
ireturn
end local 5 7: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.graalvm.compiler.lir.ConstantValue.getJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lstore 5
start local 5 8: lload 5
invokestatic org.graalvm.compiler.core.common.NumUtil.is32bit:(J)Z
ifeq 11
9: aload 0
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryConstOp
dup
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.CMP:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
aload 1
aload 3
lload 5
l2i
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryConstOp.<init>:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;ILorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
10: iconst_1
ireturn
11: StackMap locals: long
StackMap stack:
aload 0
aload 1
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 3
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitCompareRegMemoryOp:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Z
ireturn
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/AMD64LIRGenerator;
0 12 1 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 12 2 a Lorg/graalvm/compiler/lir/ConstantValue;
0 12 3 b Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
0 12 4 state Lorg/graalvm/compiler/lir/LIRFrameState;
5 7 5 vc Ljdk/vm/ci/meta/VMConstant;
8 12 5 value J
MethodParameters:
Name Flags
size
a
b
state
private boolean emitCompareRegMemoryOp(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$OperandSize;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Z
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: getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.CMP:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
aload 1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getRMOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
astore 5
start local 5 1: aload 0
new org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryRMOp
dup
aload 5
aload 1
aload 2
aload 3
aload 4
invokespecial org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryRMOp.<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.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: iconst_0
ireturn
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/AMD64LIRGenerator;
0 3 1 size Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$OperandSize;
0 3 2 a Ljdk/vm/ci/meta/AllocatableValue;
0 3 3 b Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
0 3 4 state Lorg/graalvm/compiler/lir/LIRFrameState;
1 3 5 op Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
MethodParameters:
Name Flags
size
a
b
state
private org.graalvm.compiler.core.common.calc.Condition emitCompare(jdk.vm.ci.meta.PlatformKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.core.common.calc.Condition);
descriptor: (Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;)Lorg/graalvm/compiler/core/common/calc/Condition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isVariable:(Ljdk/vm/ci/meta/Value;)Z
ifeq 3
1: aload 0
aload 1
aload 3
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitRawCompare:(Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
2: aload 4
invokevirtual org.graalvm.compiler.core.common.calc.Condition.mirror:()Lorg/graalvm/compiler/core/common/calc/Condition;
areturn
3: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitRawCompare:(Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
4: aload 4
areturn
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/AMD64LIRGenerator;
0 5 1 cmpKind Ljdk/vm/ci/meta/PlatformKind;
0 5 2 a Ljdk/vm/ci/meta/Value;
0 5 3 b Ljdk/vm/ci/meta/Value;
0 5 4 cond Lorg/graalvm/compiler/core/common/calc/Condition;
MethodParameters:
Name Flags
cmpKind
a
b
cond
private void emitRawCompare(jdk.vm.ci.meta.PlatformKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.graalvm.compiler.core.amd64.AMD64LIRGenerator.arithmeticLIRGen:Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGenerator;
checkcast org.graalvm.compiler.lir.amd64.AMD64ArithmeticLIRGeneratorTool
aload 1
checkcast jdk.vm.ci.amd64.AMD64Kind
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
aload 0
aload 3
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.loadNonConst:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
invokeinterface org.graalvm.compiler.lir.amd64.AMD64ArithmeticLIRGeneratorTool.emitCompareOp:(Ljdk/vm/ci/amd64/AMD64Kind;Lorg/graalvm/compiler/lir/Variable;Ljdk/vm/ci/meta/Value;)V
1: return
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/AMD64LIRGenerator;
0 2 1 cmpKind Ljdk/vm/ci/meta/PlatformKind;
0 2 2 left Ljdk/vm/ci/meta/Value;
0 2 3 right Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
cmpKind
left
right
public void emitMembar(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
iload 1
invokevirtual jdk.vm.ci.code.Architecture.requiredBarriers:(I)I
istore 2
start local 2 1: aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.isMP:Z
ifeq 3
iload 2
ifeq 3
2: aload 0
new org.graalvm.compiler.lir.amd64.AMD64Move$MembarOp
dup
iload 2
invokespecial org.graalvm.compiler.lir.amd64.AMD64Move$MembarOp.<init>:(I)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: StackMap locals: int
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 4 1 barriers I
1 4 2 necessaryBarriers I
MethodParameters:
Name Flags
barriers
public abstract void emitCCall(long, jdk.vm.ci.code.CallingConvention, jdk.vm.ci.meta.Value[], int);
descriptor: (JLjdk/vm/ci/code/CallingConvention;[Ljdk/vm/ci/meta/Value;I)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
address
nativeCallingConvention
args
numberOfFloatingPointArguments
protected void emitForeignCallOp(org.graalvm.compiler.core.common.spi.ForeignCallLinkage, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value[], jdk.vm.ci.meta.Value[], org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 1
invokeinterface org.graalvm.compiler.core.common.spi.ForeignCallLinkage.getMaxCallTargetOffset:()J
lstore 6
start local 6 1: lload 6
lload 6
l2i
i2l
lcmp
ifeq 4
getstatic org.graalvm.compiler.core.common.GraalOptions.GeneratePIC:Lorg/graalvm/compiler/options/OptionKey;
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.getResult:()Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getLIR:()Lorg/graalvm/compiler/lir/LIR;
invokevirtual org.graalvm.compiler.lir.LIR.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 4
2: aload 0
new org.graalvm.compiler.lir.amd64.AMD64Call$DirectFarForeignCallOp
dup
aload 1
aload 2
aload 3
aload 4
aload 5
invokespecial org.graalvm.compiler.lir.amd64.AMD64Call$DirectFarForeignCallOp.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: goto 5
4: StackMap locals: long
StackMap stack:
aload 0
new org.graalvm.compiler.lir.amd64.AMD64Call$DirectNearForeignCallOp
dup
aload 1
aload 2
aload 3
aload 4
aload 5
invokespecial org.graalvm.compiler.lir.amd64.AMD64Call$DirectNearForeignCallOp.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
5: 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 6 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 6 1 linkage Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
0 6 2 result Ljdk/vm/ci/meta/Value;
0 6 3 arguments [Ljdk/vm/ci/meta/Value;
0 6 4 temps [Ljdk/vm/ci/meta/Value;
0 6 5 info Lorg/graalvm/compiler/lir/LIRFrameState;
1 6 6 maxOffset J
MethodParameters:
Name Flags
linkage
result
arguments
temps
info
public org.graalvm.compiler.lir.Variable emitByteSwap(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: 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;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 2
start local 2 1: aload 0
new org.graalvm.compiler.lir.amd64.AMD64ByteSwapOp
dup
aload 2
aload 1
invokespecial org.graalvm.compiler.lir.amd64.AMD64ByteSwapOp.<init>:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.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/AMD64LIRGenerator;
0 3 1 input Ljdk/vm/ci/meta/Value;
1 3 2 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
input
public org.graalvm.compiler.lir.Variable emitArrayCompareTo(jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=11, locals=12, 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: 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;
astore 7
start local 7 1: getstatic jdk.vm.ci.amd64.AMD64.rax:Ljdk/vm/ci/code/Register;
aload 7
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
astore 8
start local 8 2: getstatic jdk.vm.ci.amd64.AMD64.rcx:Ljdk/vm/ci/code/Register;
aload 5
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 9
start local 9 3: getstatic jdk.vm.ci.amd64.AMD64.rdx:Ljdk/vm/ci/code/Register;
aload 6
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 10
start local 10 4: aload 0
aload 9
aload 5
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
5: aload 0
aload 10
aload 6
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
6: aload 0
new org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp
dup
aload 0
aload 1
aload 2
aload 8
aload 3
aload 4
aload 9
aload 10
invokespecial org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
7: aload 0
aload 7
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 11
start local 11 8: aload 0
aload 11
aload 8
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
9: aload 11
areturn
end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 10 1 kind1 Ljdk/vm/ci/meta/JavaKind;
0 10 2 kind2 Ljdk/vm/ci/meta/JavaKind;
0 10 3 array1 Ljdk/vm/ci/meta/Value;
0 10 4 array2 Ljdk/vm/ci/meta/Value;
0 10 5 length1 Ljdk/vm/ci/meta/Value;
0 10 6 length2 Ljdk/vm/ci/meta/Value;
1 10 7 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
2 10 8 raxRes Ljdk/vm/ci/code/RegisterValue;
3 10 9 cnt1 Ljdk/vm/ci/code/RegisterValue;
4 10 10 cnt2 Ljdk/vm/ci/code/RegisterValue;
8 10 11 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
kind1
kind2
array1
array2
length1
length2
public org.graalvm.compiler.lir.Variable emitArrayEquals(jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
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 org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 1: aload 0
new org.graalvm.compiler.lir.amd64.AMD64ArrayEqualsOp
dup
aload 0
aload 1
aload 5
aload 2
aload 3
aload 0
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.amd64.AMD64ArrayEqualsOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.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/AMD64LIRGenerator;
0 3 1 kind Ljdk/vm/ci/meta/JavaKind;
0 3 2 array1 Ljdk/vm/ci/meta/Value;
0 3 3 array2 Ljdk/vm/ci/meta/Value;
0 3 4 length Ljdk/vm/ci/meta/Value;
1 3 5 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
kind
array1
array2
length
protected int getVMPageSize();
descriptor: ()I
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: sipush 4096
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
public org.graalvm.compiler.lir.Variable emitStringIndexOf(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, int);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;I)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=13, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
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 org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 6
start local 6 1: getstatic jdk.vm.ci.amd64.AMD64.rdx:Ljdk/vm/ci/code/Register;
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 7
start local 7 2: aload 0
aload 7
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
3: getstatic jdk.vm.ci.amd64.AMD64.rax:Ljdk/vm/ci/code/Register;
aload 4
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 8
start local 8 4: aload 0
aload 8
aload 4
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
5: aload 0
new org.graalvm.compiler.lir.amd64.AMD64StringIndexOfOp
dup
aload 0
aload 6
aload 1
aload 3
aload 7
aload 8
getstatic jdk.vm.ci.amd64.AMD64.rcx:Ljdk/vm/ci/code/Register;
invokevirtual jdk.vm.ci.code.Register.asValue:()Ljdk/vm/ci/code/RegisterValue;
getstatic jdk.vm.ci.amd64.AMD64.xmm0:Ljdk/vm/ci/code/Register;
invokevirtual jdk.vm.ci.code.Register.asValue:()Ljdk/vm/ci/code/RegisterValue;
iload 5
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.getVMPageSize:()I
invokespecial org.graalvm.compiler.lir.amd64.AMD64StringIndexOfOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/code/RegisterValue;Ljdk/vm/ci/code/RegisterValue;Ljdk/vm/ci/code/RegisterValue;Ljdk/vm/ci/code/RegisterValue;II)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: aload 6
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 7 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 7 1 source Ljdk/vm/ci/meta/Value;
0 7 2 sourceCount Ljdk/vm/ci/meta/Value;
0 7 3 target Ljdk/vm/ci/meta/Value;
0 7 4 targetCount Ljdk/vm/ci/meta/Value;
0 7 5 constantTargetCount I
1 7 6 result Lorg/graalvm/compiler/lir/Variable;
2 7 7 cnt1 Ljdk/vm/ci/code/RegisterValue;
4 7 8 cnt2 Ljdk/vm/ci/code/RegisterValue;
MethodParameters:
Name Flags
source
sourceCount
target
targetCount
constantTargetCount
public void emitReturn(jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
astore 3
start local 3 1: aload 2
ifnull 4
2: aload 0
aload 1
aload 2
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.resultOperandFor:(Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/meta/AllocatableValue;
astore 3
3: aload 0
aload 3
aload 2
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
4: StackMap locals: jdk.vm.ci.meta.AllocatableValue
StackMap stack:
aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$ReturnOp
dup
aload 3
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$ReturnOp.<init>:(Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
5: return
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/AMD64LIRGenerator;
0 6 1 kind Ljdk/vm/ci/meta/JavaKind;
0 6 2 input Ljdk/vm/ci/meta/Value;
1 6 3 operand Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
kind
input
protected org.graalvm.compiler.lir.amd64.AMD64ControlFlow$StrategySwitchOp createStrategySwitchOp(org.graalvm.compiler.lir.SwitchStrategy, org.graalvm.compiler.lir.LabelRef[], org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.Variable, jdk.vm.ci.meta.AllocatableValue);
descriptor: (Lorg/graalvm/compiler/lir/SwitchStrategy;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/Variable;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/amd64/AMD64ControlFlow$StrategySwitchOp;
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$StrategySwitchOp
dup
aload 1
aload 2
aload 3
aload 4
aload 5
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$StrategySwitchOp.<init>:(Lorg/graalvm/compiler/lir/SwitchStrategy;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 1 1 strategy Lorg/graalvm/compiler/lir/SwitchStrategy;
0 1 2 keyTargets [Lorg/graalvm/compiler/lir/LabelRef;
0 1 3 defaultTarget Lorg/graalvm/compiler/lir/LabelRef;
0 1 4 key Lorg/graalvm/compiler/lir/Variable;
0 1 5 temp Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
strategy
keyTargets
defaultTarget
key
temp
public void emitStrategySwitch(org.graalvm.compiler.lir.SwitchStrategy, org.graalvm.compiler.lir.Variable, org.graalvm.compiler.lir.LabelRef[], org.graalvm.compiler.lir.LabelRef);
descriptor: (Lorg/graalvm/compiler/lir/SwitchStrategy;Lorg/graalvm/compiler/lir/Variable;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;)V
flags: (0x0001) ACC_PUBLIC
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 2
invokestatic org.graalvm.compiler.core.common.LIRKind.isValue:(Ljdk/vm/ci/meta/Value;)Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: istore 5
start local 5 3: aload 0
aload 0
aload 1
aload 3
aload 4
aload 2
iload 5
ifeq 4
aload 0
aload 2
invokevirtual org.graalvm.compiler.lir.Variable.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
goto 5
StackMap locals: org.graalvm.compiler.core.amd64.AMD64LIRGenerator org.graalvm.compiler.lir.SwitchStrategy org.graalvm.compiler.lir.Variable org.graalvm.compiler.lir.LabelRef[] org.graalvm.compiler.lir.LabelRef int
StackMap stack: org.graalvm.compiler.core.amd64.AMD64LIRGenerator org.graalvm.compiler.core.amd64.AMD64LIRGenerator org.graalvm.compiler.lir.SwitchStrategy org.graalvm.compiler.lir.LabelRef[] org.graalvm.compiler.lir.LabelRef org.graalvm.compiler.lir.Variable
4: getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
StackMap locals: org.graalvm.compiler.core.amd64.AMD64LIRGenerator org.graalvm.compiler.lir.SwitchStrategy org.graalvm.compiler.lir.Variable org.graalvm.compiler.lir.LabelRef[] org.graalvm.compiler.lir.LabelRef int
StackMap stack: org.graalvm.compiler.core.amd64.AMD64LIRGenerator org.graalvm.compiler.core.amd64.AMD64LIRGenerator org.graalvm.compiler.lir.SwitchStrategy org.graalvm.compiler.lir.LabelRef[] org.graalvm.compiler.lir.LabelRef org.graalvm.compiler.lir.Variable jdk.vm.ci.meta.AllocatableValue
5: invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.createStrategySwitchOp:(Lorg/graalvm/compiler/lir/SwitchStrategy;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/Variable;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/amd64/AMD64ControlFlow$StrategySwitchOp;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: 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 7 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 7 1 strategy Lorg/graalvm/compiler/lir/SwitchStrategy;
0 7 2 key Lorg/graalvm/compiler/lir/Variable;
0 7 3 keyTargets [Lorg/graalvm/compiler/lir/LabelRef;
0 7 4 defaultTarget Lorg/graalvm/compiler/lir/LabelRef;
3 7 5 needsTemp Z
MethodParameters:
Name Flags
strategy
key
keyTargets
defaultTarget
protected void emitTableSwitch(int, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef[], jdk.vm.ci.meta.Value);
descriptor: (ILorg/graalvm/compiler/lir/LabelRef;[Lorg/graalvm/compiler/lir/LabelRef;Ljdk/vm/ci/meta/Value;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=10, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
new org.graalvm.compiler.lir.amd64.AMD64ControlFlow$TableSwitchOp
dup
iload 1
aload 2
aload 3
aload 4
aload 0
aload 0
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
invokevirtual jdk.vm.ci.code.Architecture.getWordKind:()Ljdk/vm/ci/meta/PlatformKind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
aload 0
aload 4
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
invokespecial org.graalvm.compiler.lir.amd64.AMD64ControlFlow$TableSwitchOp.<init>:(ILorg/graalvm/compiler/lir/LabelRef;[Lorg/graalvm/compiler/lir/LabelRef;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/lir/Variable;)V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
1: return
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/AMD64LIRGenerator;
0 2 1 lowKey I
0 2 2 defaultTarget Lorg/graalvm/compiler/lir/LabelRef;
0 2 3 targets [Lorg/graalvm/compiler/lir/LabelRef;
0 2 4 key Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
lowKey
defaultTarget
targets
key
public void emitPause();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
new org.graalvm.compiler.lir.amd64.AMD64PauseOp
dup
invokespecial org.graalvm.compiler.lir.amd64.AMD64PauseOp.<init>:()V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
public org.graalvm.compiler.lir.StandardOp$SaveRegistersOp createZapRegisters(jdk.vm.ci.code.Register[], jdk.vm.ci.meta.JavaConstant[]);
descriptor: ([Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/lir/StandardOp$SaveRegistersOp;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new org.graalvm.compiler.lir.amd64.AMD64ZapRegistersOp
dup
aload 1
aload 2
invokespecial org.graalvm.compiler.lir.amd64.AMD64ZapRegistersOp.<init>:([Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/meta/JavaConstant;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 1 1 zappedRegisters [Ljdk/vm/ci/code/Register;
0 1 2 zapValues [Ljdk/vm/ci/meta/JavaConstant;
MethodParameters:
Name Flags
zappedRegisters
zapValues
public org.graalvm.compiler.lir.LIRInstruction createZapArgumentSpace(jdk.vm.ci.code.StackSlot[], jdk.vm.ci.meta.JavaConstant[]);
descriptor: ([Ljdk/vm/ci/code/StackSlot;[Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/lir/LIRInstruction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new org.graalvm.compiler.lir.amd64.AMD64ZapStackOp
dup
aload 1
aload 2
invokespecial org.graalvm.compiler.lir.amd64.AMD64ZapStackOp.<init>:([Ljdk/vm/ci/code/StackSlot;[Ljdk/vm/ci/meta/JavaConstant;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
0 1 1 zappedStack [Ljdk/vm/ci/code/StackSlot;
0 1 2 zapValues [Ljdk/vm/ci/meta/JavaConstant;
MethodParameters:
Name Flags
zappedStack
zapValues
public void emitLFence();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
new org.graalvm.compiler.lir.amd64.AMD64LFenceOp
dup
invokespecial org.graalvm.compiler.lir.amd64.AMD64LFenceOp.<init>:()V
invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
static int[] $SWITCH_TABLE$jdk$vm$ci$meta$JavaKind();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.graalvm.compiler.core.amd64.AMD64LIRGenerator.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic jdk.vm.ci.meta.JavaKind.values:()[Ljdk/vm/ci/meta/JavaKind;
arraylength
newarray 10
astore 0
2: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Boolean:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.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.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.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 jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.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 jdk.vm.ci.meta.JavaKind.Double:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
bipush 8
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Float:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
bipush 6
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Illegal:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
bipush 11
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
iconst_5
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Long:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
bipush 7
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.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 jdk.vm.ci.meta.JavaKind.Short:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
iconst_3
iastore
30: goto 32
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
31: pop
StackMap locals:
StackMap stack:
32: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Void:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
bipush 10
iastore
33: goto 35
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
34: pop
StackMap locals:
StackMap stack:
35: aload 0
dup
putstatic org.graalvm.compiler.core.amd64.AMD64LIRGenerator.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:[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
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.AMD64LIRGenerator.$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.AMD64LIRGenerator.$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
}
SourceFile: "AMD64LIRGenerator.java"
InnerClasses:
public final AMD64BinaryArithmetic = org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic of org.graalvm.compiler.asm.amd64.AMD64Assembler
public AMD64MIOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MIOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
public AMD64RMOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
public final ConditionFlag = org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag 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 JumpOp = org.graalvm.compiler.lir.StandardOp$JumpOp of org.graalvm.compiler.lir.StandardOp
public abstract SaveRegistersOp = org.graalvm.compiler.lir.StandardOp$SaveRegistersOp of org.graalvm.compiler.lir.StandardOp
public ConstOp = org.graalvm.compiler.lir.amd64.AMD64Binary$ConstOp of org.graalvm.compiler.lir.amd64.AMD64Binary
public ConstOp = org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$ConstOp of org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer
public MemoryConstOp = org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryConstOp of org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer
public MemoryRMOp = org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer$MemoryRMOp of org.graalvm.compiler.lir.amd64.AMD64BinaryConsumer
public 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 final DirectFarForeignCallOp = org.graalvm.compiler.lir.amd64.AMD64Call$DirectFarForeignCallOp of org.graalvm.compiler.lir.amd64.AMD64Call
public final DirectNearForeignCallOp = org.graalvm.compiler.lir.amd64.AMD64Call$DirectNearForeignCallOp of org.graalvm.compiler.lir.amd64.AMD64Call
public BranchOp = org.graalvm.compiler.lir.amd64.AMD64ControlFlow$BranchOp of org.graalvm.compiler.lir.amd64.AMD64ControlFlow
public final CondMoveOp = org.graalvm.compiler.lir.amd64.AMD64ControlFlow$CondMoveOp of org.graalvm.compiler.lir.amd64.AMD64ControlFlow
public final CondSetOp = org.graalvm.compiler.lir.amd64.AMD64ControlFlow$CondSetOp of org.graalvm.compiler.lir.amd64.AMD64ControlFlow
public final FloatBranchOp = org.graalvm.compiler.lir.amd64.AMD64ControlFlow$FloatBranchOp of org.graalvm.compiler.lir.amd64.AMD64ControlFlow
public final FloatCondMoveOp = org.graalvm.compiler.lir.amd64.AMD64ControlFlow$FloatCondMoveOp of org.graalvm.compiler.lir.amd64.AMD64ControlFlow
public final FloatCondSetOp = org.graalvm.compiler.lir.amd64.AMD64ControlFlow$FloatCondSetOp of org.graalvm.compiler.lir.amd64.AMD64ControlFlow
public final ReturnOp = org.graalvm.compiler.lir.amd64.AMD64ControlFlow$ReturnOp of org.graalvm.compiler.lir.amd64.AMD64ControlFlow
public StrategySwitchOp = org.graalvm.compiler.lir.amd64.AMD64ControlFlow$StrategySwitchOp of org.graalvm.compiler.lir.amd64.AMD64ControlFlow
public final TableSwitchOp = org.graalvm.compiler.lir.amd64.AMD64ControlFlow$TableSwitchOp of org.graalvm.compiler.lir.amd64.AMD64ControlFlow
public final AtomicReadAndAddOp = org.graalvm.compiler.lir.amd64.AMD64Move$AtomicReadAndAddOp of org.graalvm.compiler.lir.amd64.AMD64Move
public final AtomicReadAndWriteOp = org.graalvm.compiler.lir.amd64.AMD64Move$AtomicReadAndWriteOp of org.graalvm.compiler.lir.amd64.AMD64Move
public final CompareAndSwapOp = org.graalvm.compiler.lir.amd64.AMD64Move$CompareAndSwapOp of org.graalvm.compiler.lir.amd64.AMD64Move
public final MembarOp = org.graalvm.compiler.lir.amd64.AMD64Move$MembarOp of org.graalvm.compiler.lir.amd64.AMD64Move
public final NullCheckOp = org.graalvm.compiler.lir.amd64.AMD64Move$NullCheckOp of org.graalvm.compiler.lir.amd64.AMD64Move
public final StackLeaOp = org.graalvm.compiler.lir.amd64.AMD64Move$StackLeaOp of org.graalvm.compiler.lir.amd64.AMD64Move
public abstract MoveFactory = org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory of org.graalvm.compiler.lir.gen.LIRGeneratorTool