public class it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort extends java.util.concurrent.RecursiveAction
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort
super_class: java.util.concurrent.RecursiveAction
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private final int from;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int to;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final it.unimi.dsi.fastutil.ints.IntComparator comp;
descriptor: Lit/unimi/dsi/fastutil/ints/IntComparator;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final it.unimi.dsi.fastutil.Swapper swapper;
descriptor: Lit/unimi/dsi/fastutil/Swapper;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(int, int, it.unimi.dsi.fastutil.ints.IntComparator, it.unimi.dsi.fastutil.Swapper);
descriptor: (IILit/unimi/dsi/fastutil/ints/IntComparator;Lit/unimi/dsi/fastutil/Swapper;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.util.concurrent.RecursiveAction.<init>:()V
1: aload 0
iload 1
putfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.from:I
2: aload 0
iload 2
putfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.to:I
3: aload 0
aload 3
putfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.comp:Lit/unimi/dsi/fastutil/ints/IntComparator;
4: aload 0
aload 4
putfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.swapper:Lit/unimi/dsi/fastutil/Swapper;
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lit/unimi/dsi/fastutil/Arrays$ForkJoinGenericQuickSort;
0 6 1 from I
0 6 2 to I
0 6 3 comp Lit/unimi/dsi/fastutil/ints/IntComparator;
0 6 4 swapper Lit/unimi/dsi/fastutil/Swapper;
MethodParameters:
Name Flags
from final
to final
comp final
swapper final
protected void compute();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=9, locals=11, args_size=1
start local 0 0: aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.to:I
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.from:I
isub
istore 1
start local 1 1: iload 1
sipush 8192
if_icmpge 4
2: aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.from:I
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.to:I
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.comp:Lit/unimi/dsi/fastutil/ints/IntComparator;
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.swapper:Lit/unimi/dsi/fastutil/Swapper;
invokestatic it.unimi.dsi.fastutil.Arrays.quickSort:(IILit/unimi/dsi/fastutil/ints/IntComparator;Lit/unimi/dsi/fastutil/Swapper;)V
3: return
4: StackMap locals: int
StackMap stack:
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.from:I
iload 1
iconst_2
idiv
iadd
istore 2
start local 2 5: aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.from:I
istore 3
start local 3 6: aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.to:I
iconst_1
isub
istore 4
start local 4 7: iload 1
bipush 8
idiv
istore 5
start local 5 8: iload 3
iload 3
iload 5
iadd
iload 3
iconst_2
iload 5
imul
iadd
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.comp:Lit/unimi/dsi/fastutil/ints/IntComparator;
invokestatic it.unimi.dsi.fastutil.Arrays.med3:(IIILit/unimi/dsi/fastutil/ints/IntComparator;)I
istore 3
9: iload 2
iload 5
isub
iload 2
iload 2
iload 5
iadd
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.comp:Lit/unimi/dsi/fastutil/ints/IntComparator;
invokestatic it.unimi.dsi.fastutil.Arrays.med3:(IIILit/unimi/dsi/fastutil/ints/IntComparator;)I
istore 2
10: iload 4
iconst_2
iload 5
imul
isub
iload 4
iload 5
isub
iload 4
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.comp:Lit/unimi/dsi/fastutil/ints/IntComparator;
invokestatic it.unimi.dsi.fastutil.Arrays.med3:(IIILit/unimi/dsi/fastutil/ints/IntComparator;)I
istore 4
11: iload 3
iload 2
iload 4
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.comp:Lit/unimi/dsi/fastutil/ints/IntComparator;
invokestatic it.unimi.dsi.fastutil.Arrays.med3:(IIILit/unimi/dsi/fastutil/ints/IntComparator;)I
istore 2
12: aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.from:I
istore 6
start local 6 13: iload 6
istore 7
start local 7 14: aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.to:I
iconst_1
isub
istore 8
start local 8 15: iload 8
istore 9
start local 9 16: goto 22
start local 10 17: StackMap locals: it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort int int int int int int int int int int
StackMap stack:
iload 10
ifne 21
18: iload 6
iload 2
if_icmpne 19
iload 7
istore 2
goto 20
19: StackMap locals:
StackMap stack:
iload 7
iload 2
if_icmpne 20
iload 6
istore 2
20: StackMap locals:
StackMap stack:
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.swapper:Lit/unimi/dsi/fastutil/Swapper;
iload 6
iinc 6 1
iload 7
invokeinterface it.unimi.dsi.fastutil.Swapper.swap:(II)V
21: StackMap locals:
StackMap stack:
iinc 7 1
end local 10 22: StackMap locals:
StackMap stack:
iload 7
iload 8
if_icmpgt 30
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.comp:Lit/unimi/dsi/fastutil/ints/IntComparator;
iload 7
iload 2
invokeinterface it.unimi.dsi.fastutil.ints.IntComparator.compare:(II)I
dup
istore 10
start local 10 23: ifle 17
end local 10 24: goto 30
start local 10 25: StackMap locals: int
StackMap stack:
iload 10
ifne 29
26: iload 8
iload 2
if_icmpne 27
iload 9
istore 2
goto 28
27: StackMap locals:
StackMap stack:
iload 9
iload 2
if_icmpne 28
iload 8
istore 2
28: StackMap locals:
StackMap stack:
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.swapper:Lit/unimi/dsi/fastutil/Swapper;
iload 8
iload 9
iinc 9 -1
invokeinterface it.unimi.dsi.fastutil.Swapper.swap:(II)V
29: StackMap locals:
StackMap stack:
iinc 8 -1
end local 10 30: StackMap locals:
StackMap stack:
iload 8
iload 7
if_icmplt 32
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.comp:Lit/unimi/dsi/fastutil/ints/IntComparator;
iload 8
iload 2
invokeinterface it.unimi.dsi.fastutil.ints.IntComparator.compare:(II)I
dup
istore 10
start local 10 31: ifge 25
end local 10 32: StackMap locals:
StackMap stack:
iload 7
iload 8
if_icmple 33
goto 37
33: StackMap locals:
StackMap stack:
iload 7
iload 2
if_icmpne 34
iload 9
istore 2
goto 35
34: StackMap locals:
StackMap stack:
iload 8
iload 2
if_icmpne 35
iload 8
istore 2
35: StackMap locals:
StackMap stack:
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.swapper:Lit/unimi/dsi/fastutil/Swapper;
iload 7
iinc 7 1
iload 8
iinc 8 -1
invokeinterface it.unimi.dsi.fastutil.Swapper.swap:(II)V
36: goto 22
37: StackMap locals:
StackMap stack:
iload 6
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.from:I
isub
iload 7
iload 6
isub
invokestatic java.lang.Math.min:(II)I
istore 5
38: aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.swapper:Lit/unimi/dsi/fastutil/Swapper;
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.from:I
iload 7
iload 5
isub
iload 5
invokestatic it.unimi.dsi.fastutil.Arrays.swap:(Lit/unimi/dsi/fastutil/Swapper;III)V
39: iload 9
iload 8
isub
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.to:I
iload 9
isub
iconst_1
isub
invokestatic java.lang.Math.min:(II)I
istore 5
40: aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.swapper:Lit/unimi/dsi/fastutil/Swapper;
iload 7
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.to:I
iload 5
isub
iload 5
invokestatic it.unimi.dsi.fastutil.Arrays.swap:(Lit/unimi/dsi/fastutil/Swapper;III)V
41: iload 7
iload 6
isub
istore 5
42: iload 9
iload 8
isub
istore 10
start local 10 43: iload 5
iconst_1
if_icmple 44
iload 10
iconst_1
if_icmple 44
new it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort
dup
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.from:I
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.from:I
iload 5
iadd
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.comp:Lit/unimi/dsi/fastutil/ints/IntComparator;
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.swapper:Lit/unimi/dsi/fastutil/Swapper;
invokespecial it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.<init>:(IILit/unimi/dsi/fastutil/ints/IntComparator;Lit/unimi/dsi/fastutil/Swapper;)V
new it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort
dup
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.to:I
iload 10
isub
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.to:I
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.comp:Lit/unimi/dsi/fastutil/ints/IntComparator;
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.swapper:Lit/unimi/dsi/fastutil/Swapper;
invokespecial it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.<init>:(IILit/unimi/dsi/fastutil/ints/IntComparator;Lit/unimi/dsi/fastutil/Swapper;)V
invokestatic it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.invokeAll:(Ljava/util/concurrent/ForkJoinTask;Ljava/util/concurrent/ForkJoinTask;)V
goto 47
44: StackMap locals: int
StackMap stack:
iload 5
iconst_1
if_icmple 45
iconst_1
anewarray java.util.concurrent.ForkJoinTask
dup
iconst_0
new it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort
dup
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.from:I
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.from:I
iload 5
iadd
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.comp:Lit/unimi/dsi/fastutil/ints/IntComparator;
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.swapper:Lit/unimi/dsi/fastutil/Swapper;
invokespecial it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.<init>:(IILit/unimi/dsi/fastutil/ints/IntComparator;Lit/unimi/dsi/fastutil/Swapper;)V
aastore
invokestatic it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.invokeAll:([Ljava/util/concurrent/ForkJoinTask;)V
goto 47
StackMap locals:
StackMap stack:
45: iconst_1
anewarray java.util.concurrent.ForkJoinTask
dup
iconst_0
46: new it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort
dup
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.to:I
iload 10
isub
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.to:I
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.comp:Lit/unimi/dsi/fastutil/ints/IntComparator;
aload 0
getfield it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.swapper:Lit/unimi/dsi/fastutil/Swapper;
invokespecial it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.<init>:(IILit/unimi/dsi/fastutil/ints/IntComparator;Lit/unimi/dsi/fastutil/Swapper;)V
aastore
invokestatic it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort.invokeAll:([Ljava/util/concurrent/ForkJoinTask;)V
47: StackMap locals:
StackMap stack:
return
end local 10 end local 9 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 48 0 this Lit/unimi/dsi/fastutil/Arrays$ForkJoinGenericQuickSort;
1 48 1 len I
5 48 2 m I
6 48 3 l I
7 48 4 n I
8 48 5 s I
13 48 6 a I
14 48 7 b I
15 48 8 c I
16 48 9 d I
17 22 10 comparison I
23 24 10 comparison I
25 30 10 comparison I
31 32 10 comparison I
43 48 10 t I
}
SourceFile: "Arrays.java"
NestHost: it.unimi.dsi.fastutil.Arrays
InnerClasses:
protected ForkJoinGenericQuickSort = it.unimi.dsi.fastutil.Arrays$ForkJoinGenericQuickSort of it.unimi.dsi.fastutil.Arrays