public class org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider extends org.graalvm.compiler.hotspot.meta.HotSpotHostForeignCallsProvider
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider
super_class: org.graalvm.compiler.hotspot.meta.HotSpotHostForeignCallsProvider
{
public static final org.graalvm.compiler.core.common.spi.ForeignCallDescriptor ARITHMETIC_SIN_STUB;
descriptor: Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.graalvm.compiler.core.common.spi.ForeignCallDescriptor ARITHMETIC_COS_STUB;
descriptor: Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.graalvm.compiler.core.common.spi.ForeignCallDescriptor ARITHMETIC_TAN_STUB;
descriptor: Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.graalvm.compiler.core.common.spi.ForeignCallDescriptor ARITHMETIC_EXP_STUB;
descriptor: Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.graalvm.compiler.core.common.spi.ForeignCallDescriptor ARITHMETIC_POW_STUB;
descriptor: Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.graalvm.compiler.core.common.spi.ForeignCallDescriptor ARITHMETIC_LOG_STUB;
descriptor: Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.graalvm.compiler.core.common.spi.ForeignCallDescriptor ARITHMETIC_LOG10_STUB;
descriptor: Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private final jdk.vm.ci.meta.Value[] nativeABICallerSaveRegisters;
descriptor: [Ljdk/vm/ci/meta/Value;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=8, locals=0, args_size=0
0: new org.graalvm.compiler.core.common.spi.ForeignCallDescriptor
dup
ldc "arithmeticSinStub"
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
iconst_1
anewarray java.lang.Class
dup
iconst_0
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
aastore
invokespecial org.graalvm.compiler.core.common.spi.ForeignCallDescriptor.<init>:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)V
putstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_SIN_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
1: new org.graalvm.compiler.core.common.spi.ForeignCallDescriptor
dup
ldc "arithmeticCosStub"
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
iconst_1
anewarray java.lang.Class
dup
iconst_0
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
aastore
invokespecial org.graalvm.compiler.core.common.spi.ForeignCallDescriptor.<init>:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)V
putstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_COS_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
2: new org.graalvm.compiler.core.common.spi.ForeignCallDescriptor
dup
ldc "arithmeticTanStub"
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
iconst_1
anewarray java.lang.Class
dup
iconst_0
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
aastore
invokespecial org.graalvm.compiler.core.common.spi.ForeignCallDescriptor.<init>:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)V
putstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_TAN_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
3: new org.graalvm.compiler.core.common.spi.ForeignCallDescriptor
dup
ldc "arithmeticExpStub"
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
iconst_1
anewarray java.lang.Class
dup
iconst_0
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
aastore
invokespecial org.graalvm.compiler.core.common.spi.ForeignCallDescriptor.<init>:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)V
putstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_EXP_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
4: new org.graalvm.compiler.core.common.spi.ForeignCallDescriptor
dup
ldc "arithmeticPowStub"
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
iconst_2
anewarray java.lang.Class
dup
iconst_0
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
aastore
dup
iconst_1
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
aastore
invokespecial org.graalvm.compiler.core.common.spi.ForeignCallDescriptor.<init>:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)V
putstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_POW_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
5: new org.graalvm.compiler.core.common.spi.ForeignCallDescriptor
dup
ldc "arithmeticLogStub"
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
iconst_1
anewarray java.lang.Class
dup
iconst_0
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
aastore
invokespecial org.graalvm.compiler.core.common.spi.ForeignCallDescriptor.<init>:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)V
putstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_LOG_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
6: new org.graalvm.compiler.core.common.spi.ForeignCallDescriptor
dup
ldc "arithmeticLog10Stub"
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
iconst_1
anewarray java.lang.Class
dup
iconst_0
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
aastore
invokespecial org.graalvm.compiler.core.common.spi.ForeignCallDescriptor.<init>:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)V
putstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_LOG10_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(jdk.vm.ci.hotspot.HotSpotJVMCIRuntimeProvider, org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider, jdk.vm.ci.meta.MetaAccessProvider, jdk.vm.ci.code.CodeCacheProvider, org.graalvm.compiler.word.WordTypes, jdk.vm.ci.meta.Value[]);
descriptor: (Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntimeProvider;Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;Ljdk/vm/ci/meta/MetaAccessProvider;Ljdk/vm/ci/code/CodeCacheProvider;Lorg/graalvm/compiler/word/WordTypes;[Ljdk/vm/ci/meta/Value;)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.hotspot.meta.HotSpotHostForeignCallsProvider.<init>:(Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntimeProvider;Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;Ljdk/vm/ci/meta/MetaAccessProvider;Ljdk/vm/ci/code/CodeCacheProvider;Lorg/graalvm/compiler/word/WordTypes;)V
1: aload 0
aload 6
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.nativeABICallerSaveRegisters:[Ljdk/vm/ci/meta/Value;
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/hotspot/amd64/AMD64HotSpotForeignCallsProvider;
0 3 1 jvmciRuntime Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntimeProvider;
0 3 2 runtime Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
0 3 3 metaAccess Ljdk/vm/ci/meta/MetaAccessProvider;
0 3 4 codeCache Ljdk/vm/ci/code/CodeCacheProvider;
0 3 5 wordTypes Lorg/graalvm/compiler/word/WordTypes;
0 3 6 nativeABICallerSaveRegisters [Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
jvmciRuntime
runtime
metaAccess
codeCache
wordTypes
nativeABICallerSaveRegisters
public void initialize(org.graalvm.compiler.hotspot.meta.HotSpotProviders, org.graalvm.compiler.options.OptionValues);
descriptor: (Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/options/OptionValues;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=15, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
astore 3
start local 3 1: aload 1
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getCodeCache:()Ljdk/vm/ci/hotspot/HotSpotCodeCacheProvider;
invokevirtual jdk.vm.ci.hotspot.HotSpotCodeCacheProvider.getTarget:()Ljdk/vm/ci/code/TargetDescription;
astore 4
start local 4 2: aload 4
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
invokevirtual jdk.vm.ci.code.Architecture.getWordKind:()Ljdk/vm/ci/meta/PlatformKind;
astore 5
start local 5 3: getstatic jdk.vm.ci.amd64.AMD64.rax:Ljdk/vm/ci/code/Register;
aload 5
invokestatic org.graalvm.compiler.core.common.LIRKind.reference:(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;
astore 6
start local 6 4: getstatic jdk.vm.ci.amd64.AMD64.rdx:Ljdk/vm/ci/code/Register;
aload 5
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;
astore 7
start local 7 5: new jdk.vm.ci.code.CallingConvention
dup
iconst_0
getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
iconst_2
anewarray jdk.vm.ci.meta.AllocatableValue
dup
iconst_0
aload 6
aastore
dup
iconst_1
aload 7
aastore
invokespecial jdk.vm.ci.code.CallingConvention.<init>:(ILjdk/vm/ci/meta/AllocatableValue;[Ljdk/vm/ci/meta/AllocatableValue;)V
astore 8
start local 8 6: aload 0
new org.graalvm.compiler.hotspot.HotSpotForeignCallLinkageImpl
dup
getstatic org.graalvm.compiler.hotspot.HotSpotBackend.EXCEPTION_HANDLER:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
lconst_0
getstatic org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$RegisterEffect.PRESERVES_REGISTERS:Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$RegisterEffect;
getstatic org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$Transition.LEAF_NOFP:Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;
aload 8
aconst_null
iconst_0
iconst_1
anewarray org.graalvm.word.LocationIdentity
dup
iconst_0
invokestatic org.graalvm.word.LocationIdentity.any:()Lorg/graalvm/word/LocationIdentity;
aastore
invokespecial org.graalvm.compiler.hotspot.HotSpotForeignCallLinkageImpl.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;JLorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$RegisterEffect;Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;Ljdk/vm/ci/code/CallingConvention;Ljdk/vm/ci/code/CallingConvention;Z[Lorg/graalvm/word/LocationIdentity;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.register:(Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;)Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;
pop
7: aload 0
new org.graalvm.compiler.hotspot.HotSpotForeignCallLinkageImpl
dup
getstatic org.graalvm.compiler.hotspot.HotSpotBackend.EXCEPTION_HANDLER_IN_CALLER:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
ldc -2401018188504514833
getstatic org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$RegisterEffect.PRESERVES_REGISTERS:Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$RegisterEffect;
getstatic org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$Transition.LEAF_NOFP:Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;
aload 8
aconst_null
iconst_0
iconst_1
anewarray org.graalvm.word.LocationIdentity
dup
iconst_0
invokestatic org.graalvm.word.LocationIdentity.any:()Lorg/graalvm/word/LocationIdentity;
aastore
invokespecial org.graalvm.compiler.hotspot.HotSpotForeignCallLinkageImpl.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;JLorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$RegisterEffect;Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;Ljdk/vm/ci/code/CallingConvention;Ljdk/vm/ci/code/CallingConvention;Z[Lorg/graalvm/word/LocationIdentity;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.register:(Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;)Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;
pop
8: new org.graalvm.compiler.hotspot.amd64.AMD64MathStub
dup
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_LOG_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
aload 2
aload 1
aload 0
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_LOG_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
iconst_1
getstatic org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$Transition.LEAF:Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.NO_LOCATIONS:[Lorg/graalvm/word/LocationIdentity;
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.registerStubCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;ZLorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;[Lorg/graalvm/word/LocationIdentity;)Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64MathStub.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;)V
invokestatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.link:(Lorg/graalvm/compiler/hotspot/stubs/Stub;)V
9: new org.graalvm.compiler.hotspot.amd64.AMD64MathStub
dup
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_LOG10_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
aload 2
aload 1
aload 0
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_LOG10_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
iconst_1
getstatic org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$Transition.LEAF:Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.NO_LOCATIONS:[Lorg/graalvm/word/LocationIdentity;
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.registerStubCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;ZLorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;[Lorg/graalvm/word/LocationIdentity;)Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64MathStub.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;)V
invokestatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.link:(Lorg/graalvm/compiler/hotspot/stubs/Stub;)V
10: new org.graalvm.compiler.hotspot.amd64.AMD64MathStub
dup
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_SIN_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
aload 2
aload 1
aload 0
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_SIN_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
iconst_1
getstatic org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$Transition.LEAF:Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.NO_LOCATIONS:[Lorg/graalvm/word/LocationIdentity;
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.registerStubCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;ZLorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;[Lorg/graalvm/word/LocationIdentity;)Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64MathStub.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;)V
invokestatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.link:(Lorg/graalvm/compiler/hotspot/stubs/Stub;)V
11: new org.graalvm.compiler.hotspot.amd64.AMD64MathStub
dup
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_COS_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
aload 2
aload 1
aload 0
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_COS_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
iconst_1
getstatic org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$Transition.LEAF:Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.NO_LOCATIONS:[Lorg/graalvm/word/LocationIdentity;
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.registerStubCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;ZLorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;[Lorg/graalvm/word/LocationIdentity;)Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64MathStub.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;)V
invokestatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.link:(Lorg/graalvm/compiler/hotspot/stubs/Stub;)V
12: new org.graalvm.compiler.hotspot.amd64.AMD64MathStub
dup
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_TAN_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
aload 2
aload 1
aload 0
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_TAN_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
iconst_1
getstatic org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$Transition.LEAF:Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.NO_LOCATIONS:[Lorg/graalvm/word/LocationIdentity;
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.registerStubCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;ZLorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;[Lorg/graalvm/word/LocationIdentity;)Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64MathStub.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;)V
invokestatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.link:(Lorg/graalvm/compiler/hotspot/stubs/Stub;)V
13: new org.graalvm.compiler.hotspot.amd64.AMD64MathStub
dup
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_EXP_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
aload 2
aload 1
aload 0
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_EXP_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
iconst_1
getstatic org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$Transition.LEAF:Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.NO_LOCATIONS:[Lorg/graalvm/word/LocationIdentity;
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.registerStubCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;ZLorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;[Lorg/graalvm/word/LocationIdentity;)Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64MathStub.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;)V
invokestatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.link:(Lorg/graalvm/compiler/hotspot/stubs/Stub;)V
14: new org.graalvm.compiler.hotspot.amd64.AMD64MathStub
dup
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_POW_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
aload 2
aload 1
aload 0
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_POW_STUB:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
iconst_1
getstatic org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$Transition.LEAF:Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.NO_LOCATIONS:[Lorg/graalvm/word/LocationIdentity;
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.registerStubCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;ZLorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;[Lorg/graalvm/word/LocationIdentity;)Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64MathStub.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;)V
invokestatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.link:(Lorg/graalvm/compiler/hotspot/stubs/Stub;)V
15: aload 3
getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useCRC32Intrinsics:Z
ifeq 17
16: aload 0
getstatic org.graalvm.compiler.hotspot.replacements.CRC32Substitutions.UPDATE_BYTES_CRC32:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
aload 3
getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.updateBytesCRC32Stub:J
getstatic jdk.vm.ci.hotspot.HotSpotCallingConventionType.NativeCall:Ljdk/vm/ci/hotspot/HotSpotCallingConventionType;
getstatic org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$RegisterEffect.PRESERVES_REGISTERS:Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$RegisterEffect;
getstatic org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$Transition.LEAF_NOFP:Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;
iconst_0
iconst_1
anewarray org.graalvm.word.LocationIdentity
dup
iconst_0
invokestatic org.graalvm.word.LocationIdentity.any:()Lorg/graalvm/word/LocationIdentity;
aastore
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.registerForeignCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;JLjdk/vm/ci/code/CallingConvention$Type;Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$RegisterEffect;Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;Z[Lorg/graalvm/word/LocationIdentity;)Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;
pop
17: StackMap locals: org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider org.graalvm.compiler.hotspot.meta.HotSpotProviders org.graalvm.compiler.options.OptionValues org.graalvm.compiler.hotspot.GraalHotSpotVMConfig jdk.vm.ci.code.TargetDescription jdk.vm.ci.meta.PlatformKind jdk.vm.ci.code.RegisterValue jdk.vm.ci.code.RegisterValue jdk.vm.ci.code.CallingConvention
StackMap stack:
aload 3
getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useCRC32CIntrinsics:Z
ifeq 19
18: aload 0
getstatic org.graalvm.compiler.hotspot.replacements.CRC32CSubstitutions.UPDATE_BYTES_CRC32C:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
aload 3
getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.updateBytesCRC32C:J
getstatic jdk.vm.ci.hotspot.HotSpotCallingConventionType.NativeCall:Ljdk/vm/ci/hotspot/HotSpotCallingConventionType;
getstatic org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$RegisterEffect.PRESERVES_REGISTERS:Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$RegisterEffect;
getstatic org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$Transition.LEAF_NOFP:Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;
iconst_0
iconst_1
anewarray org.graalvm.word.LocationIdentity
dup
iconst_0
invokestatic org.graalvm.word.LocationIdentity.any:()Lorg/graalvm/word/LocationIdentity;
aastore
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.registerForeignCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;JLjdk/vm/ci/code/CallingConvention$Type;Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$RegisterEffect;Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage$Transition;Z[Lorg/graalvm/word/LocationIdentity;)Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;
pop
19: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokespecial org.graalvm.compiler.hotspot.meta.HotSpotHostForeignCallsProvider.initialize:(Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/options/OptionValues;)V
20: return
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 21 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotForeignCallsProvider;
0 21 1 providers Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
0 21 2 options Lorg/graalvm/compiler/options/OptionValues;
1 21 3 config Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
2 21 4 target Ljdk/vm/ci/code/TargetDescription;
3 21 5 word Ljdk/vm/ci/meta/PlatformKind;
4 21 6 exception Ljdk/vm/ci/code/RegisterValue;
5 21 7 exceptionPc Ljdk/vm/ci/code/RegisterValue;
6 21 8 exceptionCc Ljdk/vm/ci/code/CallingConvention;
MethodParameters:
Name Flags
providers
options
public jdk.vm.ci.meta.Value[] getNativeABICallerSaveRegisters();
descriptor: ()[Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.nativeABICallerSaveRegisters:[Ljdk/vm/ci/meta/Value;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotForeignCallsProvider;
}
SourceFile: "AMD64HotSpotForeignCallsProvider.java"
InnerClasses:
public abstract Type = jdk.vm.ci.code.CallingConvention$Type of jdk.vm.ci.code.CallingConvention
public final RegisterEffect = org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$RegisterEffect of org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage
public final Transition = org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage$Transition of org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage