public class org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider extends org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider implements org.graalvm.compiler.core.amd64.AMD64LoweringProviderMixin
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider
super_class: org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider
{
private org.graalvm.compiler.replacements.amd64.AMD64ConvertSnippets$Templates convertSnippets;
descriptor: Lorg/graalvm/compiler/replacements/amd64/AMD64ConvertSnippets$Templates;
flags: (0x0002) ACC_PRIVATE
private org.graalvm.compiler.hotspot.replacements.profiling.ProbabilisticProfileSnippets$Templates profileSnippets;
descriptor: Lorg/graalvm/compiler/hotspot/replacements/profiling/ProbabilisticProfileSnippets$Templates;
flags: (0x0002) ACC_PRIVATE
private org.graalvm.compiler.hotspot.amd64.AMD64X87MathSnippets$Templates mathSnippets;
descriptor: Lorg/graalvm/compiler/hotspot/amd64/AMD64X87MathSnippets$Templates;
flags: (0x0002) ACC_PRIVATE
private static volatile int[] $SWITCH_TABLE$org$graalvm$compiler$replacements$nodes$UnaryMathIntrinsicNode$UnaryOperation;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
public void <init>(org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider, jdk.vm.ci.meta.MetaAccessProvider, org.graalvm.compiler.core.common.spi.ForeignCallsProvider, org.graalvm.compiler.hotspot.meta.HotSpotRegistersProvider, jdk.vm.ci.hotspot.HotSpotConstantReflectionProvider, jdk.vm.ci.code.TargetDescription);
descriptor: (Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Ljdk/vm/ci/hotspot/HotSpotConstantReflectionProvider;Ljdk/vm/ci/code/TargetDescription;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, 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
aload 6
invokespecial org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.<init>:(Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Ljdk/vm/ci/hotspot/HotSpotConstantReflectionProvider;Ljdk/vm/ci/code/TargetDescription;)V
1: 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 2 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLoweringProvider;
0 2 1 runtime Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
0 2 2 metaAccess Ljdk/vm/ci/meta/MetaAccessProvider;
0 2 3 foreignCalls Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;
0 2 4 registers Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
0 2 5 constantReflection Ljdk/vm/ci/hotspot/HotSpotConstantReflectionProvider;
0 2 6 target Ljdk/vm/ci/code/TargetDescription;
MethodParameters:
Name Flags
runtime
metaAccess
foreignCalls
registers
constantReflection
target
public void initialize(org.graalvm.compiler.options.OptionValues, java.lang.Iterable<org.graalvm.compiler.debug.DebugHandlersFactory>, org.graalvm.compiler.hotspot.meta.HotSpotProviders, org.graalvm.compiler.hotspot.GraalHotSpotVMConfig);
descriptor: (Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Iterable;Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
new org.graalvm.compiler.replacements.amd64.AMD64ConvertSnippets$Templates
dup
aload 1
aload 2
aload 3
aload 3
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getSnippetReflection:()Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
aload 3
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;
invokespecial org.graalvm.compiler.replacements.amd64.AMD64ConvertSnippets$Templates.<init>:(Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Iterable;Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Ljdk/vm/ci/code/TargetDescription;)V
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider.convertSnippets:Lorg/graalvm/compiler/replacements/amd64/AMD64ConvertSnippets$Templates;
1: getstatic org.graalvm.compiler.serviceprovider.JavaVersionUtil.JAVA_SPEC:I
bipush 8
if_icmpgt 4
2: aload 0
aconst_null
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider.profileSnippets:Lorg/graalvm/compiler/hotspot/replacements/profiling/ProbabilisticProfileSnippets$Templates;
3: goto 5
4: StackMap locals:
StackMap stack:
aload 0
new org.graalvm.compiler.hotspot.replacements.profiling.ProbabilisticProfileSnippets$Templates
dup
aload 1
aload 2
aload 3
aload 3
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;
invokespecial org.graalvm.compiler.hotspot.replacements.profiling.ProbabilisticProfileSnippets$Templates.<init>:(Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Iterable;Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;)V
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider.profileSnippets:Lorg/graalvm/compiler/hotspot/replacements/profiling/ProbabilisticProfileSnippets$Templates;
5: StackMap locals:
StackMap stack:
aload 0
new org.graalvm.compiler.hotspot.amd64.AMD64X87MathSnippets$Templates
dup
aload 1
aload 2
aload 3
aload 3
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getSnippetReflection:()Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
aload 3
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;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64X87MathSnippets$Templates.<init>:(Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Iterable;Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Ljdk/vm/ci/code/TargetDescription;)V
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider.mathSnippets:Lorg/graalvm/compiler/hotspot/amd64/AMD64X87MathSnippets$Templates;
6: aload 0
aload 1
aload 2
aload 3
aload 4
invokespecial org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.initialize:(Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Iterable;Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;)V
7: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLoweringProvider;
0 8 1 options Lorg/graalvm/compiler/options/OptionValues;
0 8 2 factories Ljava/lang/Iterable<Lorg/graalvm/compiler/debug/DebugHandlersFactory;>;
0 8 3 providers Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
0 8 4 config Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
Signature: (Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Iterable<Lorg/graalvm/compiler/debug/DebugHandlersFactory;>;Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;)V
MethodParameters:
Name Flags
options
factories
providers
config
public void lower(org.graalvm.compiler.graph.Node, org.graalvm.compiler.nodes.spi.LoweringTool);
descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
instanceof org.graalvm.compiler.nodes.calc.FloatConvertNode
ifeq 3
1: aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider.convertSnippets:Lorg/graalvm/compiler/replacements/amd64/AMD64ConvertSnippets$Templates;
aload 1
checkcast org.graalvm.compiler.nodes.calc.FloatConvertNode
aload 2
invokevirtual org.graalvm.compiler.replacements.amd64.AMD64ConvertSnippets$Templates.lower:(Lorg/graalvm/compiler/nodes/calc/FloatConvertNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
2: goto 13
StackMap locals:
StackMap stack:
3: aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider.profileSnippets:Lorg/graalvm/compiler/hotspot/replacements/profiling/ProbabilisticProfileSnippets$Templates;
ifnull 6
aload 1
instanceof org.graalvm.compiler.hotspot.nodes.profiling.ProfileNode
ifeq 6
4: aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider.profileSnippets:Lorg/graalvm/compiler/hotspot/replacements/profiling/ProbabilisticProfileSnippets$Templates;
aload 1
checkcast org.graalvm.compiler.hotspot.nodes.profiling.ProfileNode
aload 2
invokevirtual org.graalvm.compiler.hotspot.replacements.profiling.ProbabilisticProfileSnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/nodes/profiling/ProfileNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
5: goto 13
StackMap locals:
StackMap stack:
6: aload 1
instanceof org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode
ifeq 9
7: aload 0
aload 1
checkcast org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode
aload 2
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider.lowerUnaryMath:(Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
8: goto 13
StackMap locals:
StackMap stack:
9: aload 1
instanceof org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode
ifeq 12
10: aload 0
aload 1
checkcast org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider.lowerArrayIndexOf:(Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;)V
11: goto 13
12: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokespecial org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.lower:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
13: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLoweringProvider;
0 14 1 n Lorg/graalvm/compiler/graph/Node;
0 14 2 tool Lorg/graalvm/compiler/nodes/spi/LoweringTool;
MethodParameters:
Name Flags
n
tool
private void lowerUnaryMath(org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode, org.graalvm.compiler.nodes.spi.LoweringTool);
descriptor: (Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getLoweringStage:()Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;
getstatic org.graalvm.compiler.nodes.spi.LoweringTool$StandardLoweringStage.HIGH_TIER:Lorg/graalvm/compiler/nodes/spi/LoweringTool$StandardLoweringStage;
if_acmpne 2
1: return
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 3
start local 3 3: aload 3
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.method:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
astore 4
start local 4 4: aload 4
ifnull 7
5: aload 4
ldc Lorg/graalvm/compiler/api/replacements/Snippet;
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
ifnull 7
6: return
7: StackMap locals: org.graalvm.compiler.nodes.StructuredGraph jdk.vm.ci.meta.ResolvedJavaMethod
StackMap stack:
getstatic org.graalvm.compiler.hotspot.HotSpotBackend$Options.GraalArithmeticStubs:Lorg/graalvm/compiler/options/OptionKey;
aload 3
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifne 15
8: invokestatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider.$SWITCH_TABLE$org$graalvm$compiler$replacements$nodes$UnaryMathIntrinsicNode$UnaryOperation:()[I
aload 1
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode.getOperation:()Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.ordinal:()I
iaload
tableswitch { // 1 - 5
1: 11
2: 13
3: 9
4: 9
5: 9
default: 15
}
9: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider.mathSnippets:Lorg/graalvm/compiler/hotspot/amd64/AMD64X87MathSnippets$Templates;
aload 1
aload 2
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64X87MathSnippets$Templates.lower:(Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
10: return
11: StackMap locals:
StackMap stack:
aload 1
aload 3
new org.graalvm.compiler.hotspot.amd64.AMD64X87MathIntrinsicNode
dup
aload 1
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
getstatic org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.LOG:Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64X87MathIntrinsicNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;)V
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addOrUnique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode.replaceAtUsages:(Lorg/graalvm/compiler/graph/Node;)V
12: return
13: StackMap locals:
StackMap stack:
aload 1
aload 3
new org.graalvm.compiler.hotspot.amd64.AMD64X87MathIntrinsicNode
dup
aload 1
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
getstatic org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.LOG10:Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64X87MathIntrinsicNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;)V
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addOrUnique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode.replaceAtUsages:(Lorg/graalvm/compiler/graph/Node;)V
14: return
15: StackMap locals:
StackMap stack:
aload 3
new org.graalvm.compiler.nodes.extended.ForeignCallNode
dup
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider.foreignCalls:Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;
aload 1
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode.getOperation:()Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
getfield org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.foreignCallDescriptor:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
iconst_1
anewarray org.graalvm.compiler.nodes.ValueNode
dup
iconst_0
aload 1
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
aastore
invokespecial org.graalvm.compiler.nodes.extended.ForeignCallNode.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;[Lorg/graalvm/compiler/nodes/ValueNode;)V
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.extended.ForeignCallNode
astore 5
start local 5 16: aload 3
aload 2
invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.lastFixedNode:()Lorg/graalvm/compiler/nodes/FixedWithNextNode;
aload 5
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addAfterFixed:(Lorg/graalvm/compiler/nodes/FixedWithNextNode;Lorg/graalvm/compiler/nodes/FixedNode;)V
17: aload 1
aload 5
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode.replaceAtUsages:(Lorg/graalvm/compiler/graph/Node;)V
18: 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 19 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLoweringProvider;
0 19 1 math Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode;
0 19 2 tool Lorg/graalvm/compiler/nodes/spi/LoweringTool;
3 19 3 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
4 19 4 method Ljdk/vm/ci/meta/ResolvedJavaMethod;
16 19 5 call Lorg/graalvm/compiler/nodes/extended/ForeignCallNode;
MethodParameters:
Name Flags
math
tool
private void lowerArrayIndexOf(org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode);
descriptor: (Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 2
start local 2 1: aload 2
new org.graalvm.compiler.nodes.extended.ForeignCallNode
dup
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider.foreignCalls:Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;
aload 1
invokevirtual org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.getStubCallDescriptor:()Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
aload 1
invokevirtual org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.getStubCallArgs:()[Lorg/graalvm/compiler/nodes/ValueNode;
invokespecial org.graalvm.compiler.nodes.extended.ForeignCallNode.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;[Lorg/graalvm/compiler/nodes/ValueNode;)V
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.extended.ForeignCallNode
astore 3
start local 3 2: aload 2
aload 1
aload 3
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.replaceFixed:(Lorg/graalvm/compiler/nodes/FixedWithNextNode;Lorg/graalvm/compiler/graph/Node;)V
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/hotspot/amd64/AMD64HotSpotLoweringProvider;
0 4 1 dispatchNode Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;
1 4 2 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
2 4 3 call Lorg/graalvm/compiler/nodes/extended/ForeignCallNode;
MethodParameters:
Name Flags
dispatchNode
static int[] $SWITCH_TABLE$org$graalvm$compiler$replacements$nodes$UnaryMathIntrinsicNode$UnaryOperation();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider.$SWITCH_TABLE$org$graalvm$compiler$replacements$nodes$UnaryMathIntrinsicNode$UnaryOperation:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.values:()[Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.COS:Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.ordinal:()I
iconst_4
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.EXP:Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.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 org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.LOG:Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.ordinal:()I
iconst_1
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.LOG10:Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.ordinal:()I
iconst_2
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.SIN:Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.ordinal:()I
iconst_3
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.TAN:Lorg/graalvm/compiler/replacements/nodes/UnaryMathIntrinsicNode$UnaryOperation;
invokevirtual org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation.ordinal:()I
iconst_5
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
dup
putstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoweringProvider.$SWITCH_TABLE$org$graalvm$compiler$replacements$nodes$UnaryMathIntrinsicNode$UnaryOperation:[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
}
SourceFile: "AMD64HotSpotLoweringProvider.java"
InnerClasses:
public Options = org.graalvm.compiler.hotspot.HotSpotBackend$Options of org.graalvm.compiler.hotspot.HotSpotBackend
public Templates = org.graalvm.compiler.hotspot.amd64.AMD64X87MathSnippets$Templates of org.graalvm.compiler.hotspot.amd64.AMD64X87MathSnippets
public Templates = org.graalvm.compiler.hotspot.replacements.profiling.ProbabilisticProfileSnippets$Templates of org.graalvm.compiler.hotspot.replacements.profiling.ProbabilisticProfileSnippets
public abstract LoweringStage = org.graalvm.compiler.nodes.spi.LoweringTool$LoweringStage of org.graalvm.compiler.nodes.spi.LoweringTool
public final StandardLoweringStage = org.graalvm.compiler.nodes.spi.LoweringTool$StandardLoweringStage of org.graalvm.compiler.nodes.spi.LoweringTool
public Templates = org.graalvm.compiler.replacements.amd64.AMD64ConvertSnippets$Templates of org.graalvm.compiler.replacements.amd64.AMD64ConvertSnippets
public final UnaryOperation = org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode$UnaryOperation of org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode