public class org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy extends org.graalvm.compiler.lir.SwitchStrategy$PrimitiveStrategy
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy
super_class: org.graalvm.compiler.lir.SwitchStrategy$PrimitiveStrategy
{
private final java.lang.Integer[] indexes;
descriptor: [Ljava/lang/Integer;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(double[], jdk.vm.ci.meta.JavaConstant[]);
descriptor: ([D[Ljdk/vm/ci/meta/JavaConstant;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial org.graalvm.compiler.lir.SwitchStrategy$PrimitiveStrategy.<init>:([D[Ljdk/vm/ci/meta/JavaConstant;)V
1: aload 2
arraylength
istore 3
start local 3 2: aload 0
iload 3
anewarray java.lang.Integer
putfield org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.indexes:[Ljava/lang/Integer;
3: iconst_0
istore 4
start local 4 4: goto 7
5: StackMap locals: org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy double[] jdk.vm.ci.meta.JavaConstant[] int int
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.indexes:[Ljava/lang/Integer;
iload 4
iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
6: iinc 4 1
StackMap locals:
StackMap stack:
7: iload 4
iload 3
if_icmplt 5
end local 4 8: aload 0
getfield org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.indexes:[Ljava/lang/Integer;
new org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy$1
dup
aload 0
aload 1
invokespecial org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy$1.<init>:(Lorg/graalvm/compiler/lir/SwitchStrategy$RangesStrategy;[D)V
invokestatic java.util.Arrays.sort:([Ljava/lang/Object;Ljava/util/Comparator;)V
9: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/graalvm/compiler/lir/SwitchStrategy$RangesStrategy;
0 10 1 keyProbabilities [D
0 10 2 keyConstants [Ljdk/vm/ci/meta/JavaConstant;
2 10 3 keyCount I
4 8 4 i I
MethodParameters:
Name Flags
keyProbabilities final
keyConstants
public void run(org.graalvm.compiler.lir.SwitchStrategy$SwitchClosure);
descriptor: (Lorg/graalvm/compiler/lir/SwitchStrategy$SwitchClosure;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: aload 1
iconst_0
getstatic org.graalvm.compiler.core.common.calc.Condition.LT:Lorg/graalvm/compiler/core/common/calc/Condition;
iconst_1
invokeinterface org.graalvm.compiler.lir.SwitchStrategy$SwitchClosure.conditionalJump:(ILorg/graalvm/compiler/core/common/calc/Condition;Z)V
2: aload 0
iinc 2 1
iload 2
invokevirtual org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.registerDefaultEffort:(I)V
3: iconst_0
istore 3
start local 3 4: aload 0
aload 1
iload 3
invokevirtual org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.getSliceEnd:(Lorg/graalvm/compiler/lir/SwitchStrategy$SwitchClosure;I)I
istore 4
start local 4 5: goto 17
6: StackMap locals: int int int
StackMap stack:
iload 3
iload 4
if_icmpne 10
7: aload 1
iload 3
getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
iconst_0
invokeinterface org.graalvm.compiler.lir.SwitchStrategy$SwitchClosure.conditionalJump:(ILorg/graalvm/compiler/core/common/calc/Condition;Z)V
8: aload 0
iload 3
iload 4
iinc 2 1
iload 2
invokevirtual org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.registerEffort:(III)V
9: goto 15
10: StackMap locals:
StackMap stack:
iload 3
ifeq 11
aload 0
getfield org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.keyConstants:[Ljdk/vm/ci/meta/JavaConstant;
iload 3
iconst_1
isub
aaload
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lconst_1
ladd
aload 0
getfield org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.keyConstants:[Ljdk/vm/ci/meta/JavaConstant;
iload 3
aaload
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lcmp
ifeq 13
11: StackMap locals:
StackMap stack:
aload 1
iload 3
getstatic org.graalvm.compiler.core.common.calc.Condition.LT:Lorg/graalvm/compiler/core/common/calc/Condition;
iconst_1
invokeinterface org.graalvm.compiler.lir.SwitchStrategy$SwitchClosure.conditionalJump:(ILorg/graalvm/compiler/core/common/calc/Condition;Z)V
12: aload 0
iinc 2 1
iload 2
invokevirtual org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.registerDefaultEffort:(I)V
13: StackMap locals:
StackMap stack:
aload 1
iload 4
getstatic org.graalvm.compiler.core.common.calc.Condition.LE:Lorg/graalvm/compiler/core/common/calc/Condition;
iconst_0
invokeinterface org.graalvm.compiler.lir.SwitchStrategy$SwitchClosure.conditionalJump:(ILorg/graalvm/compiler/core/common/calc/Condition;Z)V
14: aload 0
iload 3
iload 4
iinc 2 1
iload 2
invokevirtual org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.registerEffort:(III)V
15: StackMap locals:
StackMap stack:
iload 4
iconst_1
iadd
istore 3
16: aload 0
aload 1
iload 3
invokevirtual org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.getSliceEnd:(Lorg/graalvm/compiler/lir/SwitchStrategy$SwitchClosure;I)I
istore 4
17: StackMap locals:
StackMap stack:
iload 4
aload 0
getfield org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.keyConstants:[Ljdk/vm/ci/meta/JavaConstant;
arraylength
iconst_1
isub
if_icmpne 6
18: iload 3
iload 4
if_icmpne 23
19: aload 1
iload 3
getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
iconst_1
invokeinterface org.graalvm.compiler.lir.SwitchStrategy$SwitchClosure.conditionalJumpOrDefault:(ILorg/graalvm/compiler/core/common/calc/Condition;Z)V
20: aload 0
iload 3
iload 4
iinc 2 1
iload 2
invokevirtual org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.registerEffort:(III)V
21: aload 0
iload 2
invokevirtual org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.registerDefaultEffort:(I)V
22: goto 29
23: StackMap locals:
StackMap stack:
iload 3
ifeq 24
aload 0
getfield org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.keyConstants:[Ljdk/vm/ci/meta/JavaConstant;
iload 3
iconst_1
isub
aaload
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lconst_1
ladd
aload 0
getfield org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.keyConstants:[Ljdk/vm/ci/meta/JavaConstant;
iload 3
aaload
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lcmp
ifeq 26
24: StackMap locals:
StackMap stack:
aload 1
iload 3
getstatic org.graalvm.compiler.core.common.calc.Condition.LT:Lorg/graalvm/compiler/core/common/calc/Condition;
iconst_1
invokeinterface org.graalvm.compiler.lir.SwitchStrategy$SwitchClosure.conditionalJump:(ILorg/graalvm/compiler/core/common/calc/Condition;Z)V
25: aload 0
iinc 2 1
iload 2
invokevirtual org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.registerDefaultEffort:(I)V
26: StackMap locals:
StackMap stack:
aload 1
iload 4
getstatic org.graalvm.compiler.core.common.calc.Condition.LE:Lorg/graalvm/compiler/core/common/calc/Condition;
iconst_1
invokeinterface org.graalvm.compiler.lir.SwitchStrategy$SwitchClosure.conditionalJumpOrDefault:(ILorg/graalvm/compiler/core/common/calc/Condition;Z)V
27: aload 0
iload 3
iload 4
iinc 2 1
iload 2
invokevirtual org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.registerEffort:(III)V
28: aload 0
iload 2
invokevirtual org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy.registerDefaultEffort:(I)V
29: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lorg/graalvm/compiler/lir/SwitchStrategy$RangesStrategy;
0 30 1 closure Lorg/graalvm/compiler/lir/SwitchStrategy$SwitchClosure;
1 30 2 depth I
4 30 3 rangeStart I
5 30 4 rangeEnd I
MethodParameters:
Name Flags
closure
public jdk.vm.ci.meta.JavaConstant[] getKeyConstants();
descriptor: ()[Ljdk/vm/ci/meta/JavaConstant;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial org.graalvm.compiler.lir.SwitchStrategy$PrimitiveStrategy.getKeyConstants:()[Ljdk/vm/ci/meta/JavaConstant;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "SwitchStrategy.java"
NestHost: org.graalvm.compiler.lir.SwitchStrategy
InnerClasses:
private abstract PrimitiveStrategy = org.graalvm.compiler.lir.SwitchStrategy$PrimitiveStrategy of org.graalvm.compiler.lir.SwitchStrategy
public RangesStrategy = org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy of org.graalvm.compiler.lir.SwitchStrategy
org.graalvm.compiler.lir.SwitchStrategy$RangesStrategy$1
private abstract SwitchClosure = org.graalvm.compiler.lir.SwitchStrategy$SwitchClosure of org.graalvm.compiler.lir.SwitchStrategy