final class java.util.ArraysParallelSortHelpers$FJObject$Sorter<T> extends java.util.concurrent.CountedCompleter<java.lang.Void>
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: java.util.ArraysParallelSortHelpers$FJObject$Sorter
super_class: java.util.concurrent.CountedCompleter
{
static final long serialVersionUID;
descriptor: J
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 2446542900576103244
final T[] a;
descriptor: [Ljava/lang/Object;
flags: (0x0010) ACC_FINAL
Signature: [TT;
final T[] w;
descriptor: [Ljava/lang/Object;
flags: (0x0010) ACC_FINAL
Signature: [TT;
final int base;
descriptor: I
flags: (0x0010) ACC_FINAL
final int size;
descriptor: I
flags: (0x0010) ACC_FINAL
final int wbase;
descriptor: I
flags: (0x0010) ACC_FINAL
final int gran;
descriptor: I
flags: (0x0010) ACC_FINAL
java.util.Comparator<? super T> comparator;
descriptor: Ljava/util/Comparator;
flags: (0x0000)
Signature: Ljava/util/Comparator<-TT;>;
void <init>(java.util.concurrent.CountedCompleter<?>, T[], T[], int, int, int, int, java.util.Comparator<? super T>);
descriptor: (Ljava/util/concurrent/CountedCompleter;[Ljava/lang/Object;[Ljava/lang/Object;IIIILjava/util/Comparator;)V
flags: (0x0000)
Code:
stack=2, locals=9, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 0
aload 1
invokespecial java.util.concurrent.CountedCompleter.<init>:(Ljava/util/concurrent/CountedCompleter;)V
1: aload 0
aload 2
putfield java.util.ArraysParallelSortHelpers$FJObject$Sorter.a:[Ljava/lang/Object;
aload 0
aload 3
putfield java.util.ArraysParallelSortHelpers$FJObject$Sorter.w:[Ljava/lang/Object;
aload 0
iload 4
putfield java.util.ArraysParallelSortHelpers$FJObject$Sorter.base:I
aload 0
iload 5
putfield java.util.ArraysParallelSortHelpers$FJObject$Sorter.size:I
2: aload 0
iload 6
putfield java.util.ArraysParallelSortHelpers$FJObject$Sorter.wbase:I
aload 0
iload 7
putfield java.util.ArraysParallelSortHelpers$FJObject$Sorter.gran:I
3: aload 0
aload 8
putfield java.util.ArraysParallelSortHelpers$FJObject$Sorter.comparator:Ljava/util/Comparator;
4: 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 5 0 this Ljava/util/ArraysParallelSortHelpers$FJObject$Sorter<TT;>;
0 5 1 par Ljava/util/concurrent/CountedCompleter<*>;
0 5 2 a [Ljava/lang/Object;
0 5 3 w [Ljava/lang/Object;
0 5 4 base I
0 5 5 size I
0 5 6 wbase I
0 5 7 gran I
0 5 8 comparator Ljava/util/Comparator<-TT;>;
Signature: (Ljava/util/concurrent/CountedCompleter<*>;[TT;[TT;IIIILjava/util/Comparator<-TT;>;)V
MethodParameters:
Name Flags
par
a
w
base
size
wbase
gran
comparator
public final void compute();
descriptor: ()V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=14, locals=15, args_size=1
start local 0 0: aload 0
astore 1
start local 1 1: aload 0
getfield java.util.ArraysParallelSortHelpers$FJObject$Sorter.comparator:Ljava/util/Comparator;
astore 2
start local 2 2: aload 0
getfield java.util.ArraysParallelSortHelpers$FJObject$Sorter.a:[Ljava/lang/Object;
astore 3
start local 3 3: aload 0
getfield java.util.ArraysParallelSortHelpers$FJObject$Sorter.w:[Ljava/lang/Object;
astore 4
start local 4 4: aload 0
getfield java.util.ArraysParallelSortHelpers$FJObject$Sorter.base:I
istore 5
start local 5 5: aload 0
getfield java.util.ArraysParallelSortHelpers$FJObject$Sorter.size:I
istore 6
start local 6 6: aload 0
getfield java.util.ArraysParallelSortHelpers$FJObject$Sorter.wbase:I
istore 7
start local 7 7: aload 0
getfield java.util.ArraysParallelSortHelpers$FJObject$Sorter.gran:I
istore 8
start local 8 8: goto 26
9: StackMap locals: java.util.ArraysParallelSortHelpers$FJObject$Sorter java.util.concurrent.CountedCompleter java.util.Comparator java.lang.Object[] java.lang.Object[] int int int int
StackMap stack:
iload 6
iconst_1
iushr
istore 9
start local 9 10: iload 9
iconst_1
iushr
istore 10
start local 10 11: iload 9
iload 10
iadd
istore 11
start local 11 12: new java.util.ArraysParallelSortHelpers$Relay
dup
new java.util.ArraysParallelSortHelpers$FJObject$Merger
dup
aload 1
aload 4
aload 3
iload 7
iload 9
13: iload 7
iload 9
iadd
iload 6
iload 9
isub
iload 5
iload 8
aload 2
invokespecial java.util.ArraysParallelSortHelpers$FJObject$Merger.<init>:(Ljava/util/concurrent/CountedCompleter;[Ljava/lang/Object;[Ljava/lang/Object;IIIIIILjava/util/Comparator;)V
14: invokespecial java.util.ArraysParallelSortHelpers$Relay.<init>:(Ljava/util/concurrent/CountedCompleter;)V
astore 12
start local 12 15: new java.util.ArraysParallelSortHelpers$Relay
dup
new java.util.ArraysParallelSortHelpers$FJObject$Merger
dup
aload 12
aload 3
aload 4
iload 5
iload 9
iadd
iload 10
16: iload 5
iload 11
iadd
iload 6
iload 11
isub
iload 7
iload 9
iadd
iload 8
aload 2
invokespecial java.util.ArraysParallelSortHelpers$FJObject$Merger.<init>:(Ljava/util/concurrent/CountedCompleter;[Ljava/lang/Object;[Ljava/lang/Object;IIIIIILjava/util/Comparator;)V
17: invokespecial java.util.ArraysParallelSortHelpers$Relay.<init>:(Ljava/util/concurrent/CountedCompleter;)V
astore 13
start local 13 18: new java.util.ArraysParallelSortHelpers$FJObject$Sorter
dup
aload 13
aload 3
aload 4
iload 5
iload 11
iadd
iload 6
iload 11
isub
iload 7
iload 11
iadd
iload 8
aload 2
invokespecial java.util.ArraysParallelSortHelpers$FJObject$Sorter.<init>:(Ljava/util/concurrent/CountedCompleter;[Ljava/lang/Object;[Ljava/lang/Object;IIIILjava/util/Comparator;)V
invokevirtual java.util.ArraysParallelSortHelpers$FJObject$Sorter.fork:()Ljava/util/concurrent/ForkJoinTask;
pop
19: new java.util.ArraysParallelSortHelpers$FJObject$Sorter
dup
aload 13
aload 3
aload 4
iload 5
iload 9
iadd
iload 10
iload 7
iload 9
iadd
iload 8
aload 2
invokespecial java.util.ArraysParallelSortHelpers$FJObject$Sorter.<init>:(Ljava/util/concurrent/CountedCompleter;[Ljava/lang/Object;[Ljava/lang/Object;IIIILjava/util/Comparator;)V
invokevirtual java.util.ArraysParallelSortHelpers$FJObject$Sorter.fork:()Ljava/util/concurrent/ForkJoinTask;
pop
20: new java.util.ArraysParallelSortHelpers$Relay
dup
new java.util.ArraysParallelSortHelpers$FJObject$Merger
dup
aload 12
aload 3
aload 4
iload 5
iload 10
21: iload 5
iload 10
iadd
iload 9
iload 10
isub
iload 7
iload 8
aload 2
invokespecial java.util.ArraysParallelSortHelpers$FJObject$Merger.<init>:(Ljava/util/concurrent/CountedCompleter;[Ljava/lang/Object;[Ljava/lang/Object;IIIIIILjava/util/Comparator;)V
22: invokespecial java.util.ArraysParallelSortHelpers$Relay.<init>:(Ljava/util/concurrent/CountedCompleter;)V
astore 14
start local 14 23: new java.util.ArraysParallelSortHelpers$FJObject$Sorter
dup
aload 14
aload 3
aload 4
iload 5
iload 10
iadd
iload 9
iload 10
isub
iload 7
iload 10
iadd
iload 8
aload 2
invokespecial java.util.ArraysParallelSortHelpers$FJObject$Sorter.<init>:(Ljava/util/concurrent/CountedCompleter;[Ljava/lang/Object;[Ljava/lang/Object;IIIILjava/util/Comparator;)V
invokevirtual java.util.ArraysParallelSortHelpers$FJObject$Sorter.fork:()Ljava/util/concurrent/ForkJoinTask;
pop
24: new java.util.ArraysParallelSortHelpers$EmptyCompleter
dup
aload 14
invokespecial java.util.ArraysParallelSortHelpers$EmptyCompleter.<init>:(Ljava/util/concurrent/CountedCompleter;)V
astore 1
25: iload 10
istore 6
end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 26: StackMap locals:
StackMap stack:
iload 6
iload 8
if_icmpgt 9
27: aload 3
iload 5
iload 5
iload 6
iadd
aload 2
aload 4
iload 7
iload 6
invokestatic java.util.TimSort.sort:([Ljava/lang/Object;IILjava/util/Comparator;[Ljava/lang/Object;II)V
28: aload 1
invokevirtual java.util.concurrent.CountedCompleter.tryComplete:()V
29: 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 30 0 this Ljava/util/ArraysParallelSortHelpers$FJObject$Sorter<TT;>;
1 30 1 s Ljava/util/concurrent/CountedCompleter<*>;
2 30 2 c Ljava/util/Comparator<-TT;>;
3 30 3 a [Ljava/lang/Object;
4 30 4 w [Ljava/lang/Object;
5 30 5 b I
6 30 6 n I
7 30 7 wb I
8 30 8 g I
10 26 9 h I
11 26 10 q I
12 26 11 u I
15 26 12 fc Ljava/util/ArraysParallelSortHelpers$Relay;
18 26 13 rc Ljava/util/ArraysParallelSortHelpers$Relay;
23 26 14 bc Ljava/util/ArraysParallelSortHelpers$Relay;
}
Signature: <T:Ljava/lang/Object;>Ljava/util/concurrent/CountedCompleter<Ljava/lang/Void;>;
SourceFile: "ArraysParallelSortHelpers.java"
NestHost: java.util.ArraysParallelSortHelpers
InnerClasses:
final EmptyCompleter = java.util.ArraysParallelSortHelpers$EmptyCompleter of java.util.ArraysParallelSortHelpers
final FJObject = java.util.ArraysParallelSortHelpers$FJObject of java.util.ArraysParallelSortHelpers
final Merger = java.util.ArraysParallelSortHelpers$FJObject$Merger of java.util.ArraysParallelSortHelpers$FJObject
final Sorter = java.util.ArraysParallelSortHelpers$FJObject$Sorter of java.util.ArraysParallelSortHelpers$FJObject
final Relay = java.util.ArraysParallelSortHelpers$Relay of java.util.ArraysParallelSortHelpers