class org.graalvm.compiler.lir.jtt.ConstantStackCastTest$LoadConstantStackSpec extends org.graalvm.compiler.lir.jtt.LIRTestSpecification
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.graalvm.compiler.lir.jtt.ConstantStackCastTest$LoadConstantStackSpec
super_class: org.graalvm.compiler.lir.jtt.LIRTestSpecification
{
org.graalvm.compiler.core.common.LIRKind dstKind;
descriptor: Lorg/graalvm/compiler/core/common/LIRKind;
flags: (0x0000)
org.graalvm.compiler.core.common.LIRKind srcKind;
descriptor: Lorg/graalvm/compiler/core/common/LIRKind;
flags: (0x0000)
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 // org.graalvm.compiler.lir.jtt.ConstantStackCastTest$LoadConstantStackSpec this
0: .line 60
aload 0 /* this */
invokespecial org.graalvm.compiler.lir.jtt.LIRTestSpecification.<init>:()V
return
end local 0 // org.graalvm.compiler.lir.jtt.ConstantStackCastTest$LoadConstantStackSpec this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/jtt/ConstantStackCastTest$LoadConstantStackSpec;
public void generate(org.graalvm.compiler.lir.gen.LIRGeneratorTool, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Ljdk/vm/ci/meta/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=3
start local 0 // org.graalvm.compiler.lir.jtt.ConstantStackCastTest$LoadConstantStackSpec this
start local 1 // org.graalvm.compiler.lir.gen.LIRGeneratorTool gen
start local 2 // jdk.vm.ci.meta.Value value
0: .line 66
aload 1 /* gen */
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.getResult:()Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
astore 3 /* frameMapBuilder */
start local 3 // org.graalvm.compiler.lir.framemap.FrameMapBuilder frameMapBuilder
1: .line 68
aload 3 /* frameMapBuilder */
aload 0 /* this */
getfield org.graalvm.compiler.lir.jtt.ConstantStackCastTest$LoadConstantStackSpec.dstKind:Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilder.allocateSpillSlot:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/VirtualStackSlot;
astore 4 /* s1 */
start local 4 // org.graalvm.compiler.lir.VirtualStackSlot s1
2: .line 71
aload 2 /* value */
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 5
3: .line 72
aload 0 /* this */
getfield org.graalvm.compiler.lir.jtt.ConstantStackCastTest$LoadConstantStackSpec.srcKind:Lorg/graalvm/compiler/core/common/LIRKind;
aload 2 /* value */
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
invokestatic org.graalvm.compiler.lir.jtt.ConstantStackCastTest$LoadConstantStackSpec.getConstant:(Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/lir/ConstantValue;
astore 5 /* srcValue */
start local 5 // jdk.vm.ci.meta.Value srcValue
4: .line 73
goto 6
end local 5 // jdk.vm.ci.meta.Value srcValue
5: .line 74
StackMap locals: org.graalvm.compiler.lir.framemap.FrameMapBuilder org.graalvm.compiler.lir.VirtualStackSlot
StackMap stack:
aload 2 /* value */
astore 5 /* srcValue */
start local 5 // jdk.vm.ci.meta.Value srcValue
6: .line 76
StackMap locals: jdk.vm.ci.meta.Value
StackMap stack:
aload 1 /* gen */
aload 4 /* s1 */
aload 5 /* srcValue */
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
7: .line 77
aload 1 /* gen */
aload 4 /* s1 */
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.emitBlackhole:(Ljdk/vm/ci/meta/Value;)V
8: .line 78
aload 0 /* this */
aload 1 /* gen */
aload 4 /* s1 */
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
invokevirtual org.graalvm.compiler.lir.jtt.ConstantStackCastTest$LoadConstantStackSpec.setResult:(Ljdk/vm/ci/meta/Value;)V
9: .line 79
return
end local 5 // jdk.vm.ci.meta.Value srcValue
end local 4 // org.graalvm.compiler.lir.VirtualStackSlot s1
end local 3 // org.graalvm.compiler.lir.framemap.FrameMapBuilder frameMapBuilder
end local 2 // jdk.vm.ci.meta.Value value
end local 1 // org.graalvm.compiler.lir.gen.LIRGeneratorTool gen
end local 0 // org.graalvm.compiler.lir.jtt.ConstantStackCastTest$LoadConstantStackSpec this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/graalvm/compiler/lir/jtt/ConstantStackCastTest$LoadConstantStackSpec;
0 10 1 gen Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 10 2 value Ljdk/vm/ci/meta/Value;
1 10 3 frameMapBuilder Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
2 10 4 s1 Lorg/graalvm/compiler/lir/VirtualStackSlot;
4 5 5 srcValue Ljdk/vm/ci/meta/Value;
6 10 5 srcValue Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
gen
value
private static org.graalvm.compiler.lir.ConstantValue getConstant(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.JavaConstant);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/lir/ConstantValue;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 // org.graalvm.compiler.core.common.LIRKind srcKind
start local 1 // jdk.vm.ci.meta.JavaConstant c
0: .line 82
aload 0 /* srcKind */
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
getstatic org.graalvm.compiler.lir.jtt.ConstantStackCastTest.byteKind:Ljdk/vm/ci/meta/PlatformKind;
if_acmpne 3
1: .line 83
aload 1 /* c */
invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
i2b
invokestatic jdk.vm.ci.meta.JavaConstant.forByte:(B)Ljdk/vm/ci/meta/PrimitiveConstant;
astore 2 /* byteConst */
start local 2 // jdk.vm.ci.meta.JavaConstant byteConst
2: .line 84
new org.graalvm.compiler.lir.ConstantValue
dup
aload 0 /* srcKind */
aload 2 /* byteConst */
invokespecial org.graalvm.compiler.lir.ConstantValue.<init>:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Constant;)V
areturn
end local 2 // jdk.vm.ci.meta.JavaConstant byteConst
3: .line 86
StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "Kind not supported: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* srcKind */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 1 // jdk.vm.ci.meta.JavaConstant c
end local 0 // org.graalvm.compiler.core.common.LIRKind srcKind
LocalVariableTable:
Start End Slot Name Signature
0 4 0 srcKind Lorg/graalvm/compiler/core/common/LIRKind;
0 4 1 c Ljdk/vm/ci/meta/JavaConstant;
2 3 2 byteConst Ljdk/vm/ci/meta/JavaConstant;
MethodParameters:
Name Flags
srcKind
c
}
SourceFile: "ConstantStackCastTest.java"
NestHost: org.graalvm.compiler.lir.jtt.ConstantStackCastTest
InnerClasses:
private LoadConstantStackSpec = org.graalvm.compiler.lir.jtt.ConstantStackCastTest$LoadConstantStackSpec of org.graalvm.compiler.lir.jtt.ConstantStackCastTest