public abstract class org.graalvm.compiler.core.sparc.SPARCLIRGenerator 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.sparc.SPARCLIRGenerator
super_class: org.graalvm.compiler.lir.gen.LIRGenerator
{
private org.graalvm.compiler.lir.sparc.SPARCLoadConstantTableBaseOp loadConstantTableBaseOp;
descriptor: Lorg/graalvm/compiler/lir/sparc/SPARCLoadConstantTableBaseOp;
flags: (0x0002) ACC_PRIVATE
private final org.graalvm.compiler.core.sparc.SPARCLIRGenerator$ConstantTableBaseProvider constantTableBaseProvider;
descriptor: Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator$ConstantTableBaseProvider;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$jdk$vm$ci$sparc$SPARCKind;
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/sparc/SPARCLIRGenerator;
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.sparc.SPARCLIRGenerator.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.graalvm.compiler.core.common.spi.LIRKindTool, org.graalvm.compiler.core.sparc.SPARCArithmeticLIRGenerator, org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory, org.graalvm.compiler.phases.util.Providers, org.graalvm.compiler.lir.gen.LIRGenerationResult, org.graalvm.compiler.core.sparc.SPARCLIRGenerator$ConstantTableBaseProvider);
descriptor: (Lorg/graalvm/compiler/core/common/spi/LIRKindTool;Lorg/graalvm/compiler/core/sparc/SPARCArithmeticLIRGenerator;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator$ConstantTableBaseProvider;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, 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
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: aload 0
aload 6
putfield org.graalvm.compiler.core.sparc.SPARCLIRGenerator.constantTableBaseProvider:Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator$ConstantTableBaseProvider;
2: 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 3 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 3 1 lirKindTool Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
0 3 2 arithmeticLIRGen Lorg/graalvm/compiler/core/sparc/SPARCArithmeticLIRGenerator;
0 3 3 moveFactory Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
0 3 4 providers Lorg/graalvm/compiler/phases/util/Providers;
0 3 5 lirGenRes Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
0 3 6 constantTableBaseProvider Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator$ConstantTableBaseProvider;
MethodParameters:
Name Flags
lirKindTool
arithmeticLIRGen
moveFactory
providers
lirGenRes
constantTableBaseProvider
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=3, 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.sparc.SPARCLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$sparc$SPARCKind:()[I
aload 1
checkcast jdk.vm.ci.sparc.SPARCKind
invokevirtual jdk.vm.ci.sparc.SPARCKind.ordinal:()I
iaload
tableswitch { // 1 - 12
1: 2
2: 3
3: 4
4: 5
5: 6
6: 7
7: 8
8: 6
9: 6
10: 7
11: 7
12: 7
default: 8
}
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
8: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
aload 1
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 9 1 kind Ljdk/vm/ci/meta/PlatformKind;
1 9 2 dead J
MethodParameters:
Name Flags
kind
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.sparc.SPARCLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$sparc$SPARCKind:()[I
aload 1
invokevirtual jdk.vm.ci.meta.ValueKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.sparc.SPARCKind
invokevirtual jdk.vm.ci.sparc.SPARCKind.ordinal:()I
iaload
tableswitch { // 1 - 2
1: 1
2: 1
default: 2
}
1: StackMap locals:
StackMap stack:
aload 1
getstatic jdk.vm.ci.sparc.SPARCKind.WORD:Ljdk/vm/ci/sparc/SPARCKind;
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/sparc/SPARCLIRGenerator;
0 3 1 kind TK;
Signature: <K:Ljdk/vm/ci/meta/ValueKind<TK;>;>(TK;)TK;
MethodParameters:
Name Flags
kind
public org.graalvm.compiler.lir.sparc.SPARCAddressValue asAddressValue(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/sparc/SPARCAddressValue;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.graalvm.compiler.lir.sparc.SPARCAddressValue
ifeq 2
1: aload 1
checkcast org.graalvm.compiler.lir.sparc.SPARCAddressValue
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
astore 2
start local 2 3: aload 1
instanceof jdk.vm.ci.meta.JavaConstant
ifeq 7
4: aload 1
checkcast jdk.vm.ci.meta.JavaConstant
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lstore 3
start local 3 5: lload 3
invokestatic org.graalvm.compiler.asm.sparc.SPARCAssembler.isSimm13:(J)Z
ifeq 7
6: new org.graalvm.compiler.lir.sparc.SPARCImmediateAddressValue
dup
aload 2
getstatic jdk.vm.ci.sparc.SPARC.g0:Ljdk/vm/ci/code/Register;
aload 2
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
lload 3
l2i
invokespecial org.graalvm.compiler.lir.sparc.SPARCImmediateAddressValue.<init>:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/AllocatableValue;I)V
areturn
end local 3 7: StackMap locals: jdk.vm.ci.meta.ValueKind
StackMap stack:
new org.graalvm.compiler.lir.sparc.SPARCImmediateAddressValue
dup
aload 2
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
iconst_0
invokespecial org.graalvm.compiler.lir.sparc.SPARCImmediateAddressValue.<init>:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/AllocatableValue;I)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 8 1 address Ljdk/vm/ci/meta/Value;
3 8 2 kind Ljdk/vm/ci/meta/ValueKind<*>;
5 7 3 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.sparc.SPARCLIRGenerator.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.sparc.SPARCLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 2
start local 2 1: aload 0
new org.graalvm.compiler.lir.sparc.SPARCMove$StackLoadAddressOp
dup
aload 2
aload 1
invokespecial org.graalvm.compiler.lir.sparc.SPARCMove$StackLoadAddressOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.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/sparc/SPARCLIRGenerator;
0 3 1 stackslot Ljdk/vm/ci/meta/AllocatableValue;
1 3 2 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
stackslot
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.sparc.SPARCLIRGenerator.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.sparc.SPARCLIRGenerator.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.sparc.SPARCControlFlow$ReturnOp
dup
aload 3
invokespecial org.graalvm.compiler.lir.sparc.SPARCControlFlow$ReturnOp.<init>:(Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.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/sparc/SPARCLIRGenerator;
0 6 1 javaKind 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
javaKind
input
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: aload 0
new org.graalvm.compiler.lir.sparc.SPARCJumpOp
dup
aload 1
invokespecial org.graalvm.compiler.lir.sparc.SPARCJumpOp.<init>:(Lorg/graalvm/compiler/lir/LabelRef;)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 2 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=12, locals=15, 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 2
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 5
1: aload 0
aload 3
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
astore 10
start local 10 2: aload 0
aload 2
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.loadSimm13:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
astore 11
start local 11 3: aload 4
invokevirtual org.graalvm.compiler.core.common.calc.Condition.mirror:()Lorg/graalvm/compiler/core/common/calc/Condition;
astore 12
start local 12 4: goto 8
end local 12 end local 11 end local 10 5: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
astore 10
start local 10 6: aload 0
aload 3
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.loadSimm13:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
astore 11
start local 11 7: aload 4
astore 12
start local 12 8: StackMap locals: jdk.vm.ci.meta.AllocatableValue jdk.vm.ci.meta.Value org.graalvm.compiler.core.common.calc.Condition
StackMap stack:
aload 1
checkcast jdk.vm.ci.sparc.SPARCKind
astore 13
start local 13 9: aload 13
invokevirtual jdk.vm.ci.sparc.SPARCKind.isInteger:()Z
ifeq 13
10: getstatic org.graalvm.compiler.core.sparc.SPARCLIRGenerator.$assertionsDisabled:Z
ifne 11
aload 13
getstatic jdk.vm.ci.sparc.SPARCKind.XWORD:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.equals:(Ljava/lang/Object;)Z
ifne 11
aload 13
getstatic jdk.vm.ci.sparc.SPARCKind.WORD:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.equals:(Ljava/lang/Object;)Z
ifne 11
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "SPARC does not support compare of: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 13
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
11: StackMap locals: jdk.vm.ci.sparc.SPARCKind
StackMap stack:
aload 0
new org.graalvm.compiler.lir.sparc.SPARCControlFlow$CompareBranchOp
dup
aload 10
aload 11
aload 12
aload 6
aload 7
aload 13
iload 5
dload 8
invokespecial org.graalvm.compiler.lir.sparc.SPARCControlFlow$CompareBranchOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Ljdk/vm/ci/sparc/SPARCKind;ZD)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
12: goto 19
StackMap locals:
StackMap stack:
13: aload 13
invokevirtual jdk.vm.ci.sparc.SPARCKind.isFloat:()Z
ifeq 18
14: aload 0
aload 13
aload 2
aload 3
getstatic org.graalvm.compiler.asm.sparc.SPARCAssembler$CC.Fcc0:Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CC;
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.emitFloatCompare:(Ljdk/vm/ci/sparc/SPARCKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CC;)V
15: iconst_0
aload 4
iload 5
invokestatic org.graalvm.compiler.lir.sparc.SPARCControlFlow.fromCondition:(ZLorg/graalvm/compiler/core/common/calc/Condition;Z)Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$ConditionFlag;
astore 14
start local 14 16: aload 0
new org.graalvm.compiler.lir.sparc.SPARCControlFlow$BranchOp
dup
aload 14
aload 6
aload 7
aload 13
dload 8
invokespecial org.graalvm.compiler.lir.sparc.SPARCControlFlow$BranchOp.<init>:(Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$ConditionFlag;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Ljdk/vm/ci/sparc/SPARCKind;D)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
end local 14 17: goto 19
18: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
19: StackMap locals:
StackMap stack:
return
end local 13 end local 12 end local 11 end local 10 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 20 1 cmpKind Ljdk/vm/ci/meta/PlatformKind;
0 20 2 x Ljdk/vm/ci/meta/Value;
0 20 3 y Ljdk/vm/ci/meta/Value;
0 20 4 cond Lorg/graalvm/compiler/core/common/calc/Condition;
0 20 5 unorderedIsTrue Z
0 20 6 trueDestination Lorg/graalvm/compiler/lir/LabelRef;
0 20 7 falseDestination Lorg/graalvm/compiler/lir/LabelRef;
0 20 8 trueDestinationProbability D
2 5 10 left Ljdk/vm/ci/meta/AllocatableValue;
6 20 10 left Ljdk/vm/ci/meta/AllocatableValue;
3 5 11 right Ljdk/vm/ci/meta/Value;
7 20 11 right Ljdk/vm/ci/meta/Value;
4 5 12 actualCondition Lorg/graalvm/compiler/core/common/calc/Condition;
8 20 12 actualCondition Lorg/graalvm/compiler/core/common/calc/Condition;
9 20 13 actualCmpKind Ljdk/vm/ci/sparc/SPARCKind;
16 17 14 cf Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$ConditionFlag;
MethodParameters:
Name Flags
cmpKind
x
y
cond
unorderedIsTrue
trueDestination
falseDestination
trueDestinationProbability
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=9, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.sparc.SPARCKind
astore 6
start local 6 1: aload 0
new org.graalvm.compiler.lir.sparc.SPARCControlFlow$BranchOp
dup
getstatic org.graalvm.compiler.asm.sparc.SPARCAssembler$ConditionFlag.OverflowSet:Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$ConditionFlag;
aload 1
aload 2
aload 6
dload 4
invokespecial org.graalvm.compiler.lir.sparc.SPARCControlFlow$BranchOp.<init>:(Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$ConditionFlag;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Ljdk/vm/ci/sparc/SPARCKind;D)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: return
end local 6 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/sparc/SPARCLIRGenerator;
0 3 1 overflow Lorg/graalvm/compiler/lir/LabelRef;
0 3 2 noOverflow Lorg/graalvm/compiler/lir/LabelRef;
0 3 3 cmpLIRKind Lorg/graalvm/compiler/core/common/LIRKind;
0 3 4 overflowProbability D
1 3 6 cmpKind Ljdk/vm/ci/sparc/SPARCKind;
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=9, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
aload 2
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.emitIntegerTest:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
1: aload 0
new org.graalvm.compiler.lir.sparc.SPARCControlFlow$BranchOp
dup
getstatic org.graalvm.compiler.asm.sparc.SPARCAssembler$ConditionFlag.Equal:Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$ConditionFlag;
aload 3
aload 4
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.sparc.SPARCKind
dload 5
invokespecial org.graalvm.compiler.lir.sparc.SPARCControlFlow$BranchOp.<init>:(Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$ConditionFlag;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Ljdk/vm/ci/sparc/SPARCKind;D)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.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/sparc/SPARCLIRGenerator;
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
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=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.graalvm.compiler.core.sparc.SPARCLIRGenerator.$assertionsDisabled:Z
ifne 1
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.sparc.SPARCKind
invokevirtual jdk.vm.ci.sparc.SPARCKind.isInteger:()Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 2
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isVariable:(Ljdk/vm/ci/meta/Value;)Z
ifeq 4
2: aload 0
getstatic org.graalvm.compiler.asm.sparc.SPARCAssembler$Op3s.Andcc:Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$Op3s;
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.loadSimm13:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
invokestatic org.graalvm.compiler.lir.sparc.SPARCOP3Op.newBinaryVoid:(Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$Op3s;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/sparc/SPARCOP3Op;
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: goto 5
4: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.sparc.SPARCAssembler$Op3s.Andcc:Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$Op3s;
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.loadSimm13:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
invokestatic org.graalvm.compiler.lir.sparc.SPARCOP3Op.newBinaryVoid:(Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$Op3s;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/sparc/SPARCOP3Op;
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 6 1 a Ljdk/vm/ci/meta/Value;
0 6 2 b Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
a
b
private jdk.vm.ci.meta.Value loadSimm11(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 4
1: aload 1
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
astore 2
start local 2 2: aload 2
invokeinterface jdk.vm.ci.meta.JavaConstant.isNull:()Z
ifne 3
aload 2
invokestatic org.graalvm.compiler.asm.sparc.SPARCAssembler.isSimm11:(Ljdk/vm/ci/meta/JavaConstant;)Z
ifeq 4
3: StackMap locals: jdk.vm.ci.meta.JavaConstant
StackMap stack:
aload 1
areturn
end local 2 4: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 5 1 value Ljdk/vm/ci/meta/Value;
2 4 2 c Ljdk/vm/ci/meta/JavaConstant;
MethodParameters:
Name Flags
value
public jdk.vm.ci.meta.Value loadSimm13(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 4
1: aload 1
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
astore 2
start local 2 2: aload 2
invokeinterface jdk.vm.ci.meta.JavaConstant.isNull:()Z
ifne 3
aload 2
invokestatic org.graalvm.compiler.asm.sparc.SPARCAssembler.isSimm13:(Ljdk/vm/ci/meta/JavaConstant;)Z
ifeq 4
3: StackMap locals: jdk.vm.ci.meta.JavaConstant
StackMap stack:
aload 1
areturn
end local 2 4: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 5 1 value Ljdk/vm/ci/meta/Value;
2 4 2 c Ljdk/vm/ci/meta/JavaConstant;
MethodParameters:
Name Flags
value
public jdk.vm.ci.meta.Value loadNonConst(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: ldc "This operation is not available for SPARC."
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 1 1 value Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
value
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=17, 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
checkcast jdk.vm.ci.sparc.SPARCKind
astore 8
start local 8 1: aload 0
aload 8
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.emitCompare:(Ljdk/vm/ci/sparc/SPARCKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Z
istore 9
start local 9 2: aload 6
astore 10
start local 10 3: aload 7
astore 11
start local 11 4: aload 6
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.sparc.SPARCKind
astore 12
start local 12 5: aload 12
invokevirtual jdk.vm.ci.sparc.SPARCKind.isFloat:()Z
ifeq 12
6: aload 0
aload 6
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
astore 10
7: aload 0
aload 7
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
astore 11
8: aload 12
getstatic jdk.vm.ci.sparc.SPARCKind.SINGLE:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.equals:(Ljava/lang/Object;)Z
ifeq 9
getstatic org.graalvm.compiler.asm.sparc.SPARCAssembler.FMOVSCC:Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$FMOVcc;
goto 10
StackMap locals: org.graalvm.compiler.core.sparc.SPARCLIRGenerator 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 jdk.vm.ci.sparc.SPARCKind int jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.sparc.SPARCKind
StackMap stack:
9: getstatic org.graalvm.compiler.asm.sparc.SPARCAssembler.FMOVDCC:Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$FMOVcc;
StackMap locals:
StackMap stack: org.graalvm.compiler.asm.sparc.SPARCAssembler$FMOVcc
10: astore 13
start local 13 11: goto 18
end local 13 StackMap locals:
StackMap stack:
12: aload 12
invokevirtual jdk.vm.ci.sparc.SPARCKind.isInteger:()Z
ifeq 17
13: aload 0
aload 6
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.loadSimm11:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
astore 10
14: aload 0
aload 7
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.loadSimm11:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
astore 11
15: getstatic org.graalvm.compiler.asm.sparc.SPARCAssembler.MOVICC:Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$MOVicc;
astore 13
start local 13 16: goto 18
end local 13 17: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
start local 13 18: StackMap locals: org.graalvm.compiler.asm.sparc.SPARCAssembler$CMOV
StackMap stack:
aload 0
aload 6
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 14
start local 14 19: aload 8
invokevirtual jdk.vm.ci.sparc.SPARCKind.isInteger:()Z
iload 9
ifeq 20
aload 4
invokevirtual org.graalvm.compiler.core.common.calc.Condition.mirror:()Lorg/graalvm/compiler/core/common/calc/Condition;
goto 21
StackMap locals: org.graalvm.compiler.core.sparc.SPARCLIRGenerator 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 jdk.vm.ci.sparc.SPARCKind int jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.sparc.SPARCKind org.graalvm.compiler.asm.sparc.SPARCAssembler$CMOV org.graalvm.compiler.lir.Variable
StackMap stack: int
20: aload 4
StackMap locals: org.graalvm.compiler.core.sparc.SPARCLIRGenerator 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 jdk.vm.ci.sparc.SPARCKind int jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.sparc.SPARCKind org.graalvm.compiler.asm.sparc.SPARCAssembler$CMOV org.graalvm.compiler.lir.Variable
StackMap stack: int org.graalvm.compiler.core.common.calc.Condition
21: iload 5
invokestatic org.graalvm.compiler.lir.sparc.SPARCControlFlow.fromCondition:(ZLorg/graalvm/compiler/core/common/calc/Condition;Z)Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$ConditionFlag;
astore 15
start local 15 22: aload 8
invokestatic org.graalvm.compiler.asm.sparc.SPARCAssembler$CC.forKind:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CC;
astore 16
start local 16 23: aload 0
new org.graalvm.compiler.lir.sparc.SPARCControlFlow$CondMoveOp
dup
aload 13
aload 16
aload 15
aload 10
aload 11
aload 14
invokespecial org.graalvm.compiler.lir.sparc.SPARCControlFlow$CondMoveOp.<init>:(Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CMOV;Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CC;Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$ConditionFlag;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
24: aload 14
areturn
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 25 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 25 1 cmpKind Ljdk/vm/ci/meta/PlatformKind;
0 25 2 left Ljdk/vm/ci/meta/Value;
0 25 3 right Ljdk/vm/ci/meta/Value;
0 25 4 cond Lorg/graalvm/compiler/core/common/calc/Condition;
0 25 5 unorderedIsTrue Z
0 25 6 trueValue Ljdk/vm/ci/meta/Value;
0 25 7 falseValue Ljdk/vm/ci/meta/Value;
1 25 8 cmpSPARCKind Ljdk/vm/ci/sparc/SPARCKind;
2 25 9 mirrored Z
3 25 10 actualTrueValue Ljdk/vm/ci/meta/Value;
4 25 11 actualFalseValue Ljdk/vm/ci/meta/Value;
5 25 12 valueKind Ljdk/vm/ci/sparc/SPARCKind;
11 12 13 cmove Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CMOV;
16 17 13 cmove Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CMOV;
18 25 13 cmove Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CMOV;
19 25 14 result Lorg/graalvm/compiler/lir/Variable;
22 25 15 finalCondition Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$ConditionFlag;
23 25 16 cc Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CC;
MethodParameters:
Name Flags
cmpKind
left
right
cond
unorderedIsTrue
trueValue
falseValue
protected boolean emitCompare(jdk.vm.ci.sparc.SPARCKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/sparc/SPARCKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual jdk.vm.ci.sparc.SPARCKind.isInteger:()Z
ifeq 3
1: aload 0
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.emitIntegerCompare:(Ljdk/vm/ci/sparc/SPARCKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Z
istore 4
start local 4 2: goto 8
end local 4 StackMap locals:
StackMap stack:
3: aload 1
invokevirtual jdk.vm.ci.sparc.SPARCKind.isFloat:()Z
ifeq 7
4: iconst_0
istore 4
start local 4 5: aload 0
aload 1
aload 2
aload 3
getstatic org.graalvm.compiler.asm.sparc.SPARCAssembler$CC.Fcc0:Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CC;
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.emitFloatCompare:(Ljdk/vm/ci/sparc/SPARCKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CC;)V
6: goto 8
end local 4 7: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
start local 4 8: StackMap locals: int
StackMap stack:
iload 4
ireturn
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/sparc/SPARCLIRGenerator;
0 9 1 cmpKind Ljdk/vm/ci/sparc/SPARCKind;
0 9 2 a Ljdk/vm/ci/meta/Value;
0 9 3 b Ljdk/vm/ci/meta/Value;
2 3 4 mirrored Z
5 7 4 mirrored Z
8 9 4 mirrored Z
MethodParameters:
Name Flags
cmpKind
a
b
private boolean emitIntegerCompare(jdk.vm.ci.sparc.SPARCKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/sparc/SPARCKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.graalvm.compiler.core.sparc.SPARCLIRGenerator.$assertionsDisabled:Z
ifne 1
aload 1
invokevirtual jdk.vm.ci.sparc.SPARCKind.isInteger:()Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isVariable:(Ljdk/vm/ci/meta/Value;)Z
ifeq 6
2: aload 0
aload 3
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 3: aload 0
aload 2
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.loadSimm13:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
astore 6
start local 6 4: iconst_1
istore 4
start local 4 5: goto 9
end local 6 end local 5 end local 4 6: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 7: aload 0
aload 3
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.loadSimm13:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
astore 6
start local 6 8: iconst_0
istore 4
start local 4 9: StackMap locals: int jdk.vm.ci.meta.AllocatableValue jdk.vm.ci.meta.Value
StackMap stack:
aload 1
invokevirtual jdk.vm.ci.sparc.SPARCKind.getSizeInBytes:()I
istore 7
start local 7 10: iload 7
aload 5
invokevirtual jdk.vm.ci.meta.AllocatableValue.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
invokeinterface jdk.vm.ci.meta.PlatformKind.getSizeInBytes:()I
if_icmpge 12
11: aload 0
aload 0
getfield org.graalvm.compiler.core.sparc.SPARCLIRGenerator.arithmeticLIRGen:Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGenerator;
aload 5
aload 1
invokevirtual jdk.vm.ci.sparc.SPARCKind.getSizeInBits:()I
getstatic jdk.vm.ci.sparc.SPARCKind.XWORD:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.getSizeInBits:()I
invokevirtual org.graalvm.compiler.lir.gen.ArithmeticLIRGenerator.emitSignExtend:(Ljdk/vm/ci/meta/Value;II)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
astore 5
12: StackMap locals: int
StackMap stack:
iload 7
aload 6
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
invokeinterface jdk.vm.ci.meta.PlatformKind.getSizeInBytes:()I
if_icmpge 14
13: aload 0
getfield org.graalvm.compiler.core.sparc.SPARCLIRGenerator.arithmeticLIRGen:Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGenerator;
aload 6
aload 1
invokevirtual jdk.vm.ci.sparc.SPARCKind.getSizeInBits:()I
getstatic jdk.vm.ci.sparc.SPARCKind.XWORD:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.getSizeInBits:()I
invokevirtual org.graalvm.compiler.lir.gen.ArithmeticLIRGenerator.emitSignExtend:(Ljdk/vm/ci/meta/Value;II)Ljdk/vm/ci/meta/Value;
astore 6
14: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.asm.sparc.SPARCAssembler$Op3s.Subcc:Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$Op3s;
aload 5
aload 6
invokestatic org.graalvm.compiler.lir.sparc.SPARCOP3Op.newBinaryVoid:(Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$Op3s;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/sparc/SPARCOP3Op;
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
15: iload 4
ireturn
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 16 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 16 1 cmpKind Ljdk/vm/ci/sparc/SPARCKind;
0 16 2 a Ljdk/vm/ci/meta/Value;
0 16 3 b Ljdk/vm/ci/meta/Value;
5 6 4 mirrored Z
9 16 4 mirrored Z
3 6 5 left Ljdk/vm/ci/meta/AllocatableValue;
7 16 5 left Ljdk/vm/ci/meta/AllocatableValue;
4 6 6 right Ljdk/vm/ci/meta/Value;
8 16 6 right Ljdk/vm/ci/meta/Value;
10 16 7 compareBytes I
MethodParameters:
Name Flags
cmpKind
a
b
private void emitFloatCompare(jdk.vm.ci.sparc.SPARCKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.asm.sparc.SPARCAssembler$CC);
descriptor: (Ljdk/vm/ci/sparc/SPARCKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CC;)V
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.core.sparc.SPARCLIRGenerator.$assertionsDisabled:Z
ifne 1
aload 1
invokevirtual jdk.vm.ci.sparc.SPARCKind.isFloat:()Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.core.sparc.SPARCLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$sparc$SPARCKind:()[I
aload 1
invokevirtual jdk.vm.ci.sparc.SPARCKind.ordinal:()I
iaload
tableswitch { // 5 - 6
5: 4
6: 2
default: 6
}
2: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.sparc.SPARCAssembler$Opfs.Fcmpd:Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$Opfs;
astore 5
start local 5 3: goto 7
end local 5 4: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.sparc.SPARCAssembler$Opfs.Fcmps:Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$Opfs;
astore 5
start local 5 5: goto 7
end local 5 6: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
start local 5 7: StackMap locals: org.graalvm.compiler.asm.sparc.SPARCAssembler$Opfs
StackMap stack:
aload 0
new org.graalvm.compiler.lir.sparc.SPARCFloatCompareOp
dup
aload 5
aload 4
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
aload 0
aload 3
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
invokespecial org.graalvm.compiler.lir.sparc.SPARCFloatCompareOp.<init>:(Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$Opfs;Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CC;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
8: 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 9 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 9 1 cmpJavaKind Ljdk/vm/ci/sparc/SPARCKind;
0 9 2 a Ljdk/vm/ci/meta/Value;
0 9 3 b Ljdk/vm/ci/meta/Value;
0 9 4 cc Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CC;
3 4 5 floatCompareOpcode Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$Opfs;
5 6 5 floatCompareOpcode Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$Opfs;
7 9 5 floatCompareOpcode Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$Opfs;
MethodParameters:
Name Flags
cmpJavaKind
a
b
cc
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=9, locals=8, 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.sparc.SPARCLIRGenerator.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.sparc.SPARCLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 2: iconst_1
getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
iconst_0
invokestatic org.graalvm.compiler.lir.sparc.SPARCControlFlow.fromCondition:(ZLorg/graalvm/compiler/core/common/calc/Condition;Z)Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$ConditionFlag;
astore 6
start local 6 3: aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
invokestatic org.graalvm.compiler.asm.sparc.SPARCAssembler$CC.forKind:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CC;
astore 7
start local 7 4: aload 0
new org.graalvm.compiler.lir.sparc.SPARCControlFlow$CondMoveOp
dup
getstatic org.graalvm.compiler.asm.sparc.SPARCAssembler.MOVICC:Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$MOVicc;
aload 7
aload 6
aload 0
aload 3
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.loadSimm11:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
aload 0
aload 4
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.loadSimm11:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
aload 5
invokespecial org.graalvm.compiler.lir.sparc.SPARCControlFlow$CondMoveOp.<init>:(Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CMOV;Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CC;Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$ConditionFlag;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
5: aload 5
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 6 1 left Ljdk/vm/ci/meta/Value;
0 6 2 right Ljdk/vm/ci/meta/Value;
0 6 3 trueValue Ljdk/vm/ci/meta/Value;
0 6 4 falseValue Ljdk/vm/ci/meta/Value;
2 6 5 result Lorg/graalvm/compiler/lir/Variable;
3 6 6 flag Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$ConditionFlag;
4 6 7 cc Lorg/graalvm/compiler/asm/sparc/SPARCAssembler$CC;
MethodParameters:
Name Flags
left
right
trueValue
falseValue
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
invokestatic org.graalvm.compiler.asm.sparc.SPARCAssembler.isWordDisp30:(J)Z
ifeq 4
2: aload 0
new org.graalvm.compiler.lir.sparc.SPARCCall$DirectNearForeignCallOp
dup
aload 1
aload 2
aload 3
aload 4
aload 5
invokespecial org.graalvm.compiler.lir.sparc.SPARCCall$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.sparc.SPARCLIRGenerator.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.sparc.SPARCCall$DirectFarForeignCallOp
dup
aload 1
aload 2
aload 3
aload 4
aload 5
invokespecial org.graalvm.compiler.lir.sparc.SPARCCall$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.sparc.SPARCLIRGenerator.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/sparc/SPARCLIRGenerator;
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 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=11, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 2
invokevirtual org.graalvm.compiler.lir.Variable.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 1: getstatic jdk.vm.ci.meta.AllocatableValue.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
astore 6
start local 6 2: aload 1
invokevirtual org.graalvm.compiler.lir.SwitchStrategy.getKeyConstants:()[Ljdk/vm/ci/meta/Constant;
dup
astore 10
arraylength
istore 9
iconst_0
istore 8
goto 8
StackMap locals: org.graalvm.compiler.core.sparc.SPARCLIRGenerator org.graalvm.compiler.lir.SwitchStrategy org.graalvm.compiler.lir.Variable org.graalvm.compiler.lir.LabelRef[] org.graalvm.compiler.lir.LabelRef org.graalvm.compiler.lir.Variable jdk.vm.ci.meta.AllocatableValue top int int jdk.vm.ci.meta.Constant[]
StackMap stack:
3: aload 10
iload 8
aaload
astore 7
start local 7 4: aload 0
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.getMoveFactory:()Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
aload 7
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory.canInlineConstant:(Ljdk/vm/ci/meta/Constant;)Z
ifne 7
5: aload 0
getfield org.graalvm.compiler.core.sparc.SPARCLIRGenerator.constantTableBaseProvider:Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator$ConstantTableBaseProvider;
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator$ConstantTableBaseProvider.getConstantTableBase:()Lorg/graalvm/compiler/lir/Variable;
astore 6
6: goto 9
end local 7 7: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
8: iload 8
iload 9
if_icmplt 3
9: StackMap locals: org.graalvm.compiler.core.sparc.SPARCLIRGenerator org.graalvm.compiler.lir.SwitchStrategy org.graalvm.compiler.lir.Variable org.graalvm.compiler.lir.LabelRef[] org.graalvm.compiler.lir.LabelRef org.graalvm.compiler.lir.Variable jdk.vm.ci.meta.AllocatableValue
StackMap stack:
aload 0
aload 0
aload 6
aload 1
aload 3
aload 4
aload 2
aload 5
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.createStrategySwitchOp:(Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/SwitchStrategy;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/lir/Variable;)Lorg/graalvm/compiler/lir/sparc/SPARCControlFlow$StrategySwitchOp;
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
10: 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 11 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 11 1 strategy Lorg/graalvm/compiler/lir/SwitchStrategy;
0 11 2 key Lorg/graalvm/compiler/lir/Variable;
0 11 3 keyTargets [Lorg/graalvm/compiler/lir/LabelRef;
0 11 4 defaultTarget Lorg/graalvm/compiler/lir/LabelRef;
1 11 5 scratchValue Lorg/graalvm/compiler/lir/Variable;
2 11 6 base Ljdk/vm/ci/meta/AllocatableValue;
4 7 7 c Ljdk/vm/ci/meta/Constant;
MethodParameters:
Name Flags
strategy
key
keyTargets
defaultTarget
protected org.graalvm.compiler.lir.sparc.SPARCControlFlow$StrategySwitchOp createStrategySwitchOp(jdk.vm.ci.meta.AllocatableValue, org.graalvm.compiler.lir.SwitchStrategy, org.graalvm.compiler.lir.LabelRef[], org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.Variable, org.graalvm.compiler.lir.Variable);
descriptor: (Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/SwitchStrategy;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/lir/Variable;)Lorg/graalvm/compiler/lir/sparc/SPARCControlFlow$StrategySwitchOp;
flags: (0x0004) ACC_PROTECTED
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: new org.graalvm.compiler.lir.sparc.SPARCControlFlow$StrategySwitchOp
dup
aload 1
aload 2
aload 3
aload 4
aload 5
aload 6
invokespecial org.graalvm.compiler.lir.sparc.SPARCControlFlow$StrategySwitchOp.<init>:(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/SwitchStrategy;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/Variable;)V
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/sparc/SPARCLIRGenerator;
0 1 1 base Ljdk/vm/ci/meta/AllocatableValue;
0 1 2 strategy Lorg/graalvm/compiler/lir/SwitchStrategy;
0 1 3 keyTargets [Lorg/graalvm/compiler/lir/LabelRef;
0 1 4 defaultTarget Lorg/graalvm/compiler/lir/LabelRef;
0 1 5 key Lorg/graalvm/compiler/lir/Variable;
0 1 6 scratchValue Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
base
strategy
keyTargets
defaultTarget
key
scratchValue
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=9, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 4
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 1: aload 0
aload 5
aload 4
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
2: aload 0
new org.graalvm.compiler.lir.sparc.SPARCControlFlow$TableSwitchOp
dup
iload 1
aload 2
aload 3
aload 5
aload 0
aload 0
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.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.sparc.SPARCLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
invokespecial org.graalvm.compiler.lir.sparc.SPARCControlFlow$TableSwitchOp.<init>:(ILorg/graalvm/compiler/lir/LabelRef;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/lir/Variable;)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: 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 4 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 4 1 lowKey I
0 4 2 defaultTarget Lorg/graalvm/compiler/lir/LabelRef;
0 4 3 targets [Lorg/graalvm/compiler/lir/LabelRef;
0 4 4 key Ljdk/vm/ci/meta/Value;
1 4 5 tmp Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
lowKey
defaultTarget
targets
key
protected jdk.vm.ci.sparc.SPARC getArchitecture();
descriptor: ()Ljdk/vm/ci/sparc/SPARC;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
checkcast jdk.vm.ci.sparc.SPARC
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
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=7, 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.sparc.SPARCLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 2
start local 2 1: aload 0
new org.graalvm.compiler.lir.sparc.SPARCByteSwapOp
dup
aload 0
aload 2
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.sparc.SPARCByteSwapOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.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/sparc/SPARCLIRGenerator;
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 emitArrayEquals(jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, int, boolean);
descriptor: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;IZ)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=8, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
getstatic jdk.vm.ci.sparc.SPARCKind.WORD:Ljdk/vm/ci/sparc/SPARCKind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 7
start local 7 1: aload 0
new org.graalvm.compiler.lir.sparc.SPARCArrayEqualsOp
dup
aload 0
aload 1
aload 7
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
aload 0
aload 3
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
aload 0
aload 4
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
iload 6
invokespecial org.graalvm.compiler.lir.sparc.SPARCArrayEqualsOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Z)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 7
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
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;
0 3 5 constantLength I
0 3 6 directPointers Z
1 3 7 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
kind
array1
array2
length
constantLength
directPointers
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.sparc.SPARCLIRGenerator.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.sparc.SPARCLIRGenerator.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.sparc.SPARCMove$MembarOp
dup
iload 2
invokespecial org.graalvm.compiler.lir.sparc.SPARCMove$MembarOp.<init>:(I)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.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/sparc/SPARCLIRGenerator;
0 4 1 barriers I
1 4 2 necessaryBarriers I
MethodParameters:
Name Flags
barriers
public void emitDeoptimize(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
new org.graalvm.compiler.lir.sparc.SPARCControlFlow$ReturnOp
dup
getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.lir.sparc.SPARCControlFlow$ReturnOp.<init>:(Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
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/sparc/SPARCLIRGenerator;
0 2 1 actionAndReason Ljdk/vm/ci/meta/Value;
0 2 2 speculation Ljdk/vm/ci/meta/Value;
0 2 3 state Lorg/graalvm/compiler/lir/LIRFrameState;
MethodParameters:
Name Flags
actionAndReason
speculation
state
public jdk.vm.ci.meta.Value emitSignExtendLoad(org.graalvm.compiler.core.common.LIRKind, org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 3
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/sparc/SPARCAddressValue;
astore 5
start local 5 1: aload 0
aload 2
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 6
start local 6 2: aload 0
new org.graalvm.compiler.lir.sparc.SPARCMove$LoadOp
dup
aload 1
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
aload 6
aload 5
aload 4
iconst_1
invokespecial org.graalvm.compiler.lir.sparc.SPARCMove$LoadOp.<init>:(Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/sparc/SPARCAddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;Z)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: aload 6
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 4 1 kind Lorg/graalvm/compiler/core/common/LIRKind;
0 4 2 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
0 4 3 address Ljdk/vm/ci/meta/Value;
0 4 4 state Lorg/graalvm/compiler/lir/LIRFrameState;
1 4 5 loadAddress Lorg/graalvm/compiler/lir/sparc/SPARCAddressValue;
2 4 6 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
kind
resultKind
address
state
public jdk.vm.ci.meta.Value emitZeroExtendLoad(org.graalvm.compiler.core.common.LIRKind, org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 3
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/sparc/SPARCAddressValue;
astore 5
start local 5 1: aload 0
aload 2
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 6
start local 6 2: aload 0
new org.graalvm.compiler.lir.sparc.SPARCMove$LoadOp
dup
aload 1
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
aload 6
aload 5
aload 4
invokespecial org.graalvm.compiler.lir.sparc.SPARCMove$LoadOp.<init>:(Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/sparc/SPARCAddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: aload 6
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
0 4 1 kind Lorg/graalvm/compiler/core/common/LIRKind;
0 4 2 resultKind Lorg/graalvm/compiler/core/common/LIRKind;
0 4 3 address Ljdk/vm/ci/meta/Value;
0 4 4 state Lorg/graalvm/compiler/lir/LIRFrameState;
1 4 5 loadAddress Lorg/graalvm/compiler/lir/sparc/SPARCAddressValue;
2 4 6 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
kind
resultKind
address
state
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=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
astore 3
start local 3 1: getstatic org.graalvm.compiler.core.sparc.SPARCLIRGenerator.$assertionsDisabled:Z
ifne 2
aload 3
getstatic jdk.vm.ci.sparc.SPARCKind.XWORD:Ljdk/vm/ci/sparc/SPARCKind;
if_acmpeq 2
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " - "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " not an object!"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals: jdk.vm.ci.meta.PlatformKind
StackMap stack:
aload 0
new org.graalvm.compiler.lir.sparc.SPARCMove$NullCheckOp
dup
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/sparc/SPARCAddressValue;
aload 2
invokespecial org.graalvm.compiler.lir.sparc.SPARCMove$NullCheckOp.<init>:(Lorg/graalvm/compiler/lir/sparc/SPARCAddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: return
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/sparc/SPARCLIRGenerator;
0 4 1 address Ljdk/vm/ci/meta/Value;
0 4 2 state Lorg/graalvm/compiler/lir/LIRFrameState;
1 4 3 kind Ljdk/vm/ci/meta/PlatformKind;
MethodParameters:
Name Flags
address
state
public void emitLoadConstantTableBase();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.core.sparc.SPARCLIRGenerator.constantTableBaseProvider:Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator$ConstantTableBaseProvider;
aload 0
getstatic jdk.vm.ci.sparc.SPARCKind.XWORD:Ljdk/vm/ci/sparc/SPARCKind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
putfield org.graalvm.compiler.core.sparc.SPARCLIRGenerator$ConstantTableBaseProvider.constantTableBase:Lorg/graalvm/compiler/lir/Variable;
1: aload 0
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.getResult:()Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getLIR:()Lorg/graalvm/compiler/lir/LIR;
aload 0
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.getCurrentBlock:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
istore 1
start local 1 2: aload 0
new org.graalvm.compiler.lir.StandardOp$NoOp
dup
aload 0
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.getCurrentBlock:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
iload 1
invokespecial org.graalvm.compiler.lir.StandardOp$NoOp.<init>:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;I)V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
checkcast org.graalvm.compiler.lir.StandardOp$NoOp
astore 2
start local 2 3: aload 0
new org.graalvm.compiler.lir.sparc.SPARCLoadConstantTableBaseOp
dup
aload 0
getfield org.graalvm.compiler.core.sparc.SPARCLIRGenerator.constantTableBaseProvider:Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator$ConstantTableBaseProvider;
getfield org.graalvm.compiler.core.sparc.SPARCLIRGenerator$ConstantTableBaseProvider.constantTableBase:Lorg/graalvm/compiler/lir/Variable;
aload 2
invokespecial org.graalvm.compiler.lir.sparc.SPARCLoadConstantTableBaseOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/lir/StandardOp$NoOp;)V
putfield org.graalvm.compiler.core.sparc.SPARCLIRGenerator.loadConstantTableBaseOp:Lorg/graalvm/compiler/lir/sparc/SPARCLoadConstantTableBaseOp;
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
2 5 1 nextPosition I
3 5 2 placeHolder Lorg/graalvm/compiler/lir/StandardOp$NoOp;
public void beforeRegisterAllocation();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.getResult:()Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getLIR:()Lorg/graalvm/compiler/lir/LIR;
astore 1
start local 1 1: aload 0
getfield org.graalvm.compiler.core.sparc.SPARCLIRGenerator.loadConstantTableBaseOp:Lorg/graalvm/compiler/lir/sparc/SPARCLoadConstantTableBaseOp;
aload 1
aload 0
getfield org.graalvm.compiler.core.sparc.SPARCLIRGenerator.constantTableBaseProvider:Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator$ConstantTableBaseProvider;
getfield org.graalvm.compiler.core.sparc.SPARCLIRGenerator$ConstantTableBaseProvider.useConstantTableBase:Z
invokevirtual org.graalvm.compiler.lir.sparc.SPARCLoadConstantTableBaseOp.setAlive:(Lorg/graalvm/compiler/lir/LIR;Z)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
1 3 1 lir Lorg/graalvm/compiler/lir/LIR;
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.sparc.SPARCPauseOp
dup
invokespecial org.graalvm.compiler.lir.sparc.SPARCPauseOp.<init>:()V
invokevirtual org.graalvm.compiler.core.sparc.SPARCLIRGenerator.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/sparc/SPARCLIRGenerator;
public void emitSpeculationFence();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:()Ljava/lang/RuntimeException;
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/sparc/SPARCLIRGenerator;
static int[] $SWITCH_TABLE$jdk$vm$ci$sparc$SPARCKind();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.graalvm.compiler.core.sparc.SPARCLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$sparc$SPARCKind:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic jdk.vm.ci.sparc.SPARCKind.values:()[Ljdk/vm/ci/sparc/SPARCKind;
arraylength
newarray 10
astore 0
2: aload 0
getstatic jdk.vm.ci.sparc.SPARCKind.BYTE:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.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.sparc.SPARCKind.DOUBLE:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.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.sparc.SPARCKind.HWORD:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.ordinal:()I
iconst_2
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic jdk.vm.ci.sparc.SPARCKind.QUAD:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.ordinal:()I
bipush 7
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic jdk.vm.ci.sparc.SPARCKind.SINGLE:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.ordinal:()I
iconst_5
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic jdk.vm.ci.sparc.SPARCKind.V32_BYTE:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.ordinal:()I
bipush 8
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic jdk.vm.ci.sparc.SPARCKind.V32_HWORD:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.ordinal:()I
bipush 9
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic jdk.vm.ci.sparc.SPARCKind.V64_BYTE:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.ordinal:()I
bipush 10
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
getstatic jdk.vm.ci.sparc.SPARCKind.V64_HWORD:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.ordinal:()I
bipush 11
iastore
27: goto 29
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
28: pop
StackMap locals:
StackMap stack:
29: aload 0
getstatic jdk.vm.ci.sparc.SPARCKind.V64_SINGLE:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.ordinal:()I
bipush 13
iastore
30: goto 32
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
31: pop
StackMap locals:
StackMap stack:
32: aload 0
getstatic jdk.vm.ci.sparc.SPARCKind.V64_WORD:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.ordinal:()I
bipush 12
iastore
33: goto 35
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
34: pop
StackMap locals:
StackMap stack:
35: aload 0
getstatic jdk.vm.ci.sparc.SPARCKind.WORD:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.ordinal:()I
iconst_3
iastore
36: goto 38
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
37: pop
StackMap locals:
StackMap stack:
38: aload 0
getstatic jdk.vm.ci.sparc.SPARCKind.XWORD:Ljdk/vm/ci/sparc/SPARCKind;
invokevirtual jdk.vm.ci.sparc.SPARCKind.ordinal:()I
iconst_4
iastore
39: goto 41
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
40: pop
StackMap locals:
StackMap stack:
41: aload 0
dup
putstatic org.graalvm.compiler.core.sparc.SPARCLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$sparc$SPARCKind:[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
}
SourceFile: "SPARCLIRGenerator.java"
NestMembers:
org.graalvm.compiler.core.sparc.SPARCLIRGenerator$ConstantTableBaseProvider
InnerClasses:
public final CC = org.graalvm.compiler.asm.sparc.SPARCAssembler$CC of org.graalvm.compiler.asm.sparc.SPARCAssembler
public abstract CMOV = org.graalvm.compiler.asm.sparc.SPARCAssembler$CMOV of org.graalvm.compiler.asm.sparc.SPARCAssembler
public final ConditionFlag = org.graalvm.compiler.asm.sparc.SPARCAssembler$ConditionFlag of org.graalvm.compiler.asm.sparc.SPARCAssembler
public final Op3s = org.graalvm.compiler.asm.sparc.SPARCAssembler$Op3s of org.graalvm.compiler.asm.sparc.SPARCAssembler
public final Opfs = org.graalvm.compiler.asm.sparc.SPARCAssembler$Opfs of org.graalvm.compiler.asm.sparc.SPARCAssembler
public final ConstantTableBaseProvider = org.graalvm.compiler.core.sparc.SPARCLIRGenerator$ConstantTableBaseProvider of org.graalvm.compiler.core.sparc.SPARCLIRGenerator
public final NoOp = org.graalvm.compiler.lir.StandardOp$NoOp of org.graalvm.compiler.lir.StandardOp
public abstract MoveFactory = org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory of org.graalvm.compiler.lir.gen.LIRGeneratorTool
public final DirectFarForeignCallOp = org.graalvm.compiler.lir.sparc.SPARCCall$DirectFarForeignCallOp of org.graalvm.compiler.lir.sparc.SPARCCall
public final DirectNearForeignCallOp = org.graalvm.compiler.lir.sparc.SPARCCall$DirectNearForeignCallOp of org.graalvm.compiler.lir.sparc.SPARCCall
public final BranchOp = org.graalvm.compiler.lir.sparc.SPARCControlFlow$BranchOp of org.graalvm.compiler.lir.sparc.SPARCControlFlow
public final CompareBranchOp = org.graalvm.compiler.lir.sparc.SPARCControlFlow$CompareBranchOp of org.graalvm.compiler.lir.sparc.SPARCControlFlow
public final CondMoveOp = org.graalvm.compiler.lir.sparc.SPARCControlFlow$CondMoveOp of org.graalvm.compiler.lir.sparc.SPARCControlFlow
public final ReturnOp = org.graalvm.compiler.lir.sparc.SPARCControlFlow$ReturnOp of org.graalvm.compiler.lir.sparc.SPARCControlFlow
public StrategySwitchOp = org.graalvm.compiler.lir.sparc.SPARCControlFlow$StrategySwitchOp of org.graalvm.compiler.lir.sparc.SPARCControlFlow
public final TableSwitchOp = org.graalvm.compiler.lir.sparc.SPARCControlFlow$TableSwitchOp of org.graalvm.compiler.lir.sparc.SPARCControlFlow
public final LoadOp = org.graalvm.compiler.lir.sparc.SPARCMove$LoadOp of org.graalvm.compiler.lir.sparc.SPARCMove
public final MembarOp = org.graalvm.compiler.lir.sparc.SPARCMove$MembarOp of org.graalvm.compiler.lir.sparc.SPARCMove
public final NullCheckOp = org.graalvm.compiler.lir.sparc.SPARCMove$NullCheckOp of org.graalvm.compiler.lir.sparc.SPARCMove
public final StackLoadAddressOp = org.graalvm.compiler.lir.sparc.SPARCMove$StackLoadAddressOp of org.graalvm.compiler.lir.sparc.SPARCMove