Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
after boxUnbox
// access flags 0x1000001
public scala$collection$mutable$PriorityQueue$$heapify(I)V
// parameter final from
L0
LINENUMBER 148 L0
L1
LINENUMBER 151 L1
ALOAD 0
INVOKEVIRTUAL scala/collection/mutable/PriorityQueue.length ()I
L2
ISTORE 2
L3
LINENUMBER 153 L3
ILOAD 1
ICONST_2
IF_ICMPGT L4
L5
LINENUMBER 155 L5
GETSTATIC scala/runtime/RichInt$.MODULE$ : Lscala/runtime/RichInt$;
GETSTATIC scala/Predef$.MODULE$ : Lscala/Predef$;
ILOAD 2
ICONST_2
IDIV
ISTORE 8
DUP
IFNONNULL L6
ACONST_NULL
ATHROW
L6
ASTORE 7
L7
ILOAD 8
ISTORE 9
GOTO L8
L9
L8
ILOAD 9
ICONST_1
INVOKEVIRTUAL scala/runtime/RichInt$.to$extension0 (II)Lscala/collection/immutable/Range$Inclusive;
ICONST_M1
INVOKEVIRTUAL scala/collection/immutable/Range$Inclusive.by (I)Lscala/collection/immutable/Range;
ALOAD 0
ILOAD 2
ISTORE 26
ASTORE 25
ALOAD 25
ILOAD 26
INVOKEDYNAMIC apply$mcZI$sp(Lscala/collection/mutable/PriorityQueue;I)Lscala/runtime/java8/JFunction1$mcZI$sp; [
// handle kind 0x6 : INVOKESTATIC
java/lang/invoke/LambdaMetafactory.altMetafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
// arguments:
(I)Z,
// handle kind 0x6 : INVOKESTATIC
scala/collection/mutable/PriorityQueue.$anonfun$heapify$1(Lscala/collection/mutable/PriorityQueue;II)Z,
(I)Z,
3,
1,
scala.Serializable.class
]
L10
ASTORE 11
DUP
IFNONNULL L11
ACONST_NULL
ATHROW
L11
ASTORE 10
L12
ALOAD 10
INVOKEVIRTUAL scala/collection/immutable/Range.isEmpty ()Z
IFNE L13
L14
ALOAD 10
INVOKEVIRTUAL scala/collection/immutable/Range.start ()I
L15
ISTORE 12
L16
ALOAD 11
ILOAD 12
ISTORE 27
POP
ALOAD 25
ILOAD 26
ILOAD 27
INVOKESTATIC scala/collection/mutable/PriorityQueue.$anonfun$heapify$1 (Lscala/collection/mutable/PriorityQueue;II)Z
L17
ILOAD 12
ALOAD 10
INVOKEVIRTUAL scala/collection/immutable/Range.scala$collection$immutable$Range$$lastElement ()I
IF_ICMPNE L18
GOTO L19
L18
ILOAD 12
ALOAD 10
INVOKEVIRTUAL scala/collection/immutable/Range.step ()I
IADD
ISTORE 12
L20
GOTO L16
L13
GOTO L19
L21
L19
GOTO L22
L4
LINENUMBER 157 L4
ILOAD 2
ILOAD 1
ISUB
ICONST_4
IF_ICMPGE L23
L24
LINENUMBER 159 L24
GETSTATIC scala/runtime/RichInt$.MODULE$ : Lscala/runtime/RichInt$;
GETSTATIC scala/Predef$.MODULE$ : Lscala/Predef$;
ILOAD 1
ISTORE 14
DUP
IFNONNULL L25
ACONST_NULL
ATHROW
L25
ASTORE 13
L26
ILOAD 14
ISTORE 15
GOTO L27
L28
L27
ILOAD 15
ILOAD 2
INVOKEVIRTUAL scala/runtime/RichInt$.to$extension0 (II)Lscala/collection/immutable/Range$Inclusive;
ALOAD 0
ASTORE 28
ALOAD 28
INVOKEDYNAMIC apply$mcVI$sp(Lscala/collection/mutable/PriorityQueue;)Lscala/runtime/java8/JFunction1$mcVI$sp; [
// handle kind 0x6 : INVOKESTATIC
java/lang/invoke/LambdaMetafactory.altMetafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
// arguments:
(I)V,
// handle kind 0x6 : INVOKESTATIC
scala/collection/mutable/PriorityQueue.$anonfun$heapify$2(Lscala/collection/mutable/PriorityQueue;I)V,
(I)V,
3,
1,
scala.Serializable.class
]
L29
ASTORE 17
DUP
IFNONNULL L30
ACONST_NULL
ATHROW
L30
ASTORE 16
L31
ALOAD 16
INVOKEVIRTUAL scala/collection/immutable/Range.isEmpty ()Z
IFNE L32
L33
ALOAD 16
INVOKEVIRTUAL scala/collection/immutable/Range.start ()I
L34
ISTORE 18
L35
ALOAD 17
ILOAD 18
ISTORE 29
POP
ALOAD 28
ILOAD 29
INVOKESTATIC scala/collection/mutable/PriorityQueue.$anonfun$heapify$2 (Lscala/collection/mutable/PriorityQueue;I)V
L36
ILOAD 18
ALOAD 16
INVOKEVIRTUAL scala/collection/immutable/Range.scala$collection$immutable$Range$$lastElement ()I
IF_ICMPNE L37
GOTO L38
L37
ILOAD 18
ALOAD 16
INVOKEVIRTUAL scala/collection/immutable/Range.step ()I
IADD
ISTORE 18
L39
GOTO L35
L32
GOTO L38
L40
L38
GOTO L41
L23
LINENUMBER 162 L23
ILOAD 1
ICONST_2
IDIV
INVOKESTATIC scala/runtime/IntRef.create (I)Lscala/runtime/IntRef;
L42
ASTORE 3
L43
LINENUMBER 163 L43
GETSTATIC scala/collection/mutable/Queue$.MODULE$ : Lscala/collection/mutable/Queue$;
GETSTATIC scala/Predef$.MODULE$ : Lscala/Predef$;
ICONST_1
NEWARRAY T_INT
DUP
ICONST_0
ALOAD 3
GETFIELD scala/runtime/IntRef.elem : I
IASTORE
INVOKEVIRTUAL scala/Predef$.wrapIntArray ([I)Lscala/collection/mutable/WrappedArray;
INVOKEVIRTUAL scala/collection/mutable/Queue$.apply (Lscala/collection/Seq;)Lscala/collection/GenTraversable;
CHECKCAST scala/collection/mutable/Queue
L44
ASTORE 4
L45
LINENUMBER 168 L45
GETSTATIC scala/runtime/RichInt$.MODULE$ : Lscala/runtime/RichInt$;
GETSTATIC scala/Predef$.MODULE$ : Lscala/Predef$;
ILOAD 2
ICONST_2
IDIV
ISTORE 20
DUP
IFNONNULL L46
ACONST_NULL
ATHROW
L46
ASTORE 19
L47
ILOAD 20
ISTORE 21
GOTO L48
L49
L48
ILOAD 21
ALOAD 3
GETFIELD scala/runtime/IntRef.elem : I
INVOKEVIRTUAL scala/runtime/RichInt$.until$extension0 (II)Lscala/collection/immutable/Range;
ICONST_M1
INVOKEVIRTUAL scala/collection/immutable/Range.by (I)Lscala/collection/immutable/Range;
ALOAD 0
ILOAD 2
ALOAD 3
ALOAD 4
ASTORE 33
ASTORE 32
ISTORE 31
ASTORE 30
ALOAD 30
ILOAD 31
ALOAD 32
ALOAD 33
INVOKEDYNAMIC apply(Lscala/collection/mutable/PriorityQueue;ILscala/runtime/IntRef;Lscala/collection/mutable/Queue;)Lscala/Function1; [
// handle kind 0x6 : INVOKESTATIC
java/lang/invoke/LambdaMetafactory.altMetafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
// arguments:
(Ljava/lang/Object;)Ljava/lang/Object;,
// handle kind 0x6 : INVOKESTATIC
scala/collection/mutable/PriorityQueue.$anonfun$heapify$3$adapted(Lscala/collection/mutable/PriorityQueue;ILscala/runtime/IntRef;Lscala/collection/mutable/Queue;Ljava/lang/Object;)Ljava/lang/Object;,
(Ljava/lang/Object;)Ljava/lang/Object;,
3,
1,
scala.Serializable.class
]
L50
ASTORE 23
DUP
IFNONNULL L51
ACONST_NULL
ATHROW
L51
ASTORE 22
L52
ALOAD 22
INVOKEVIRTUAL scala/collection/immutable/Range.isEmpty ()Z
IFNE L53
L54
ALOAD 22
INVOKEVIRTUAL scala/collection/immutable/Range.start ()I
L55
ISTORE 24
L56
ALOAD 23
ILOAD 24
ISTORE 34
POP
ALOAD 30
ILOAD 31
ALOAD 32
ALOAD 33
ILOAD 34
ISTORE 39
ASTORE 38
ASTORE 37
ISTORE 36
ASTORE 35
L57
LINENUMBER 168 L57
L58
ALOAD 35
ILOAD 36
ALOAD 37
ALOAD 38
ILOAD 39
INVOKESTATIC scala/collection/mutable/PriorityQueue.$anonfun$heapify$3 (Lscala/collection/mutable/PriorityQueue;ILscala/runtime/IntRef;Lscala/collection/mutable/Queue;I)Ljava/lang/Object;
ASTORE 40
GOTO L59
L60
L59
ALOAD 40
LINENUMBER 168 L59
POP
L61
ILOAD 24
ALOAD 22
INVOKEVIRTUAL scala/collection/immutable/Range.scala$collection$immutable$Range$$lastElement ()I
IF_ICMPNE L62
GOTO L63
L62
ILOAD 24
ALOAD 22
INVOKEVIRTUAL scala/collection/immutable/Range.step ()I
IADD
ISTORE 24
L64
GOTO L56
L53
GOTO L63
L65
L63
L66
LINENUMBER 179 L66
L67
ALOAD 4
INVOKEVIRTUAL scala/collection/mutable/Queue.nonEmpty ()Z
IFEQ L68
L69
LINENUMBER 180 L69
ALOAD 4
INVOKEVIRTUAL scala/collection/mutable/Queue.dequeue ()Ljava/lang/Object;
INVOKESTATIC scala/runtime/BoxesRunTime.unboxToInt (Ljava/lang/Object;)I
L70
ISTORE 5
L71
LINENUMBER 181 L71
ALOAD 0
ALOAD 0
INVOKEVIRTUAL scala/collection/mutable/PriorityQueue.scala$collection$mutable$PriorityQueue$$resarr ()Lscala/collection/mutable/PriorityQueue$ResizableArrayAccess;
INVOKEVIRTUAL scala/collection/mutable/PriorityQueue$ResizableArrayAccess.p_array ()[Ljava/lang/Object;
ILOAD 5
ILOAD 2
INVOKEVIRTUAL scala/collection/mutable/PriorityQueue.fixDown ([Ljava/lang/Object;II)Z
IFEQ L72
L73
LINENUMBER 182 L73
ILOAD 5
ICONST_2
IDIV
L74
ISTORE 6
L75
LINENUMBER 183 L75
ILOAD 6
ALOAD 3
GETFIELD scala/runtime/IntRef.elem : I
IF_ICMPGE L76
L77
ILOAD 6
ICONST_0
IF_ICMPLE L76
L78
LINENUMBER 185 L78
ALOAD 3
ILOAD 6
PUTFIELD scala/runtime/IntRef.elem : I
L79
LINENUMBER 186 L79
ALOAD 4
ILOAD 6
INVOKESTATIC scala/runtime/BoxesRunTime.boxToInteger (I)Ljava/lang/Integer;
INVOKEVIRTUAL scala/collection/mutable/Queue.$plus$eq (Ljava/lang/Object;)Lscala/collection/mutable/MutableList;
L80
GOTO L81
L76
LINENUMBER 183 L76
GETSTATIC scala/runtime/BoxedUnit.UNIT : Lscala/runtime/BoxedUnit;
L81
GOTO L82
L72
LINENUMBER 181 L72
GETSTATIC scala/runtime/BoxedUnit.UNIT : Lscala/runtime/BoxedUnit;
L82
POP
L83
LINENUMBER 179 L83
GOTO L67
L84
L68
L85
L41
L22
RETURN
L86
LOCALVARIABLE parent I L74 L81 6
LOCALVARIABLE i I L70 L83 5
LOCALVARIABLE min Lscala/runtime/IntRef; L42 L85 3
LOCALVARIABLE queue Lscala/collection/mutable/Queue; L44 L85 4
LOCALVARIABLE n I L2 L22 2
LOCALVARIABLE this Lscala/collection/mutable/PriorityQueue; L1 L86 0
LOCALVARIABLE from I L1 L86 1
LOCALVARIABLE intWrapper_x I L7 L9 8
LOCALVARIABLE foreach_i I L15 L13 12
LOCALVARIABLE foreach_this Lscala/collection/immutable/Range; L12 L21 10
LOCALVARIABLE foreach_f Lscala/Function1; L12 L21 11
LOCALVARIABLE intWrapper_x I L26 L28 14
LOCALVARIABLE foreach$mVc$sp_i I L34 L32 18
LOCALVARIABLE foreach$mVc$sp_this Lscala/collection/immutable/Range; L31 L40 16
LOCALVARIABLE foreach$mVc$sp_f Lscala/Function1; L31 L40 17
LOCALVARIABLE intWrapper_x I L47 L49 20
LOCALVARIABLE foreach_i I L55 L53 24
LOCALVARIABLE foreach_this Lscala/collection/immutable/Range; L52 L65 22
LOCALVARIABLE foreach_f Lscala/Function1; L52 L65 23
LOCALVARIABLE $anonfun$heapify$3$adapted_$this Lscala/collection/mutable/PriorityQueue; L58 L60 35
LOCALVARIABLE $anonfun$heapify$3$adapted_n$1 I L58 L60 36
LOCALVARIABLE $anonfun$heapify$3$adapted_min$1 Lscala/runtime/IntRef; L58 L60 37
LOCALVARIABLE $anonfun$heapify$3$adapted_queue$1 Lscala/collection/mutable/Queue; L58 L60 38
LOCALVARIABLE $anonfun$heapify$3$adapted_i I L58 L60 39
MAXSTACK = 6
MAXLOCALS = 41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.