public abstract class org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicBinaryOp extends org.graalvm.compiler.lir.amd64.AMD64LIRInstruction
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicBinaryOp
super_class: org.graalvm.compiler.lir.amd64.AMD64LIRInstruction
{
protected jdk.vm.ci.meta.Value output;
descriptor: Ljdk/vm/ci/meta/Value;
flags: (0x0004) ACC_PROTECTED
RuntimeVisibleAnnotations:
org.graalvm.compiler.lir.LIRInstruction$Def()
protected jdk.vm.ci.meta.Value input0;
descriptor: Ljdk/vm/ci/meta/Value;
flags: (0x0004) ACC_PROTECTED
RuntimeVisibleAnnotations:
org.graalvm.compiler.lir.LIRInstruction$Use()
protected jdk.vm.ci.meta.Value input1;
descriptor: Ljdk/vm/ci/meta/Value;
flags: (0x0004) ACC_PROTECTED
RuntimeVisibleAnnotations:
org.graalvm.compiler.lir.LIRInstruction$Use()
protected jdk.vm.ci.meta.Value[] temps;
descriptor: [Ljdk/vm/ci/meta/Value;
flags: (0x0004) ACC_PROTECTED
RuntimeVisibleAnnotations:
org.graalvm.compiler.lir.LIRInstruction$Temp()
public void <init>(org.graalvm.compiler.lir.LIRInstructionClass<? extends org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicBinaryOp>, jdk.vm.ci.code.Register[]);
descriptor: (Lorg/graalvm/compiler/lir/LIRInstructionClass;[Ljdk/vm/ci/code/Register;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokespecial org.graalvm.compiler.lir.amd64.AMD64LIRInstruction.<init>:(Lorg/graalvm/compiler/lir/LIRInstructionClass;)V
1: aload 0
getstatic jdk.vm.ci.amd64.AMD64.xmm0:Ljdk/vm/ci/code/Register;
getstatic jdk.vm.ci.amd64.AMD64Kind.DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
putfield org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicBinaryOp.input0:Ljdk/vm/ci/meta/Value;
2: aload 0
getstatic jdk.vm.ci.amd64.AMD64.xmm1:Ljdk/vm/ci/code/Register;
getstatic jdk.vm.ci.amd64.AMD64Kind.DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
putfield org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicBinaryOp.input1:Ljdk/vm/ci/meta/Value;
3: aload 0
getstatic jdk.vm.ci.amd64.AMD64.xmm0:Ljdk/vm/ci/code/Register;
getstatic jdk.vm.ci.amd64.AMD64Kind.DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
putfield org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicBinaryOp.output:Ljdk/vm/ci/meta/Value;
4: aload 0
aload 2
invokestatic org.graalvm.compiler.lir.amd64.AMD64HotSpotHelper.registersToValues:([Ljdk/vm/ci/code/Register;)[Ljdk/vm/ci/meta/Value;
putfield org.graalvm.compiler.lir.amd64.AMD64MathIntrinsicBinaryOp.temps:[Ljdk/vm/ci/meta/Value;
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicBinaryOp;
0 6 1 type Lorg/graalvm/compiler/lir/LIRInstructionClass<+Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicBinaryOp;>;
0 6 2 registers [Ljdk/vm/ci/code/Register;
Signature: (Lorg/graalvm/compiler/lir/LIRInstructionClass<+Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicBinaryOp;>;[Ljdk/vm/ci/code/Register;)V
MethodParameters:
Name Flags
type
registers
public final org.graalvm.compiler.lir.Variable emitLIRWrapper(org.graalvm.compiler.lir.gen.LIRGenerator, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/lir/gen/LIRGenerator;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_2
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
dup
iconst_1
aload 3
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 4
start local 4 1: getstatic jdk.vm.ci.amd64.AMD64.xmm0:Ljdk/vm/ci/code/Register;
aload 4
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
astore 5
start local 5 2: aload 1
aload 5
aload 2
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
3: getstatic jdk.vm.ci.amd64.AMD64.xmm1:Ljdk/vm/ci/code/Register;
aload 4
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
astore 6
start local 6 4: aload 1
aload 6
aload 3
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
5: aload 1
aload 0
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: aload 1
aload 4
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 7
start local 7 7: aload 1
aload 7
aload 5
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
8: 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 9 0 this Lorg/graalvm/compiler/lir/amd64/AMD64MathIntrinsicBinaryOp;
0 9 1 gen Lorg/graalvm/compiler/lir/gen/LIRGenerator;
0 9 2 x Ljdk/vm/ci/meta/Value;
0 9 3 y Ljdk/vm/ci/meta/Value;
1 9 4 kind Lorg/graalvm/compiler/core/common/LIRKind;
2 9 5 xmm0Value Ljdk/vm/ci/code/RegisterValue;
4 9 6 xmm1Value Ljdk/vm/ci/code/RegisterValue;
7 9 7 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
gen
x
y
}
SourceFile: "AMD64MathIntrinsicBinaryOp.java"
InnerClasses:
public abstract Def = org.graalvm.compiler.lir.LIRInstruction$Def of org.graalvm.compiler.lir.LIRInstruction
public abstract Temp = org.graalvm.compiler.lir.LIRInstruction$Temp of org.graalvm.compiler.lir.LIRInstruction
public abstract Use = org.graalvm.compiler.lir.LIRInstruction$Use of org.graalvm.compiler.lir.LIRInstruction