final class com.carrotsearch.hppc.BitUtil
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.carrotsearch.hppc.BitUtil
  super_class: java.lang.Object
{
  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.carrotsearch.hppc.BitUtil this
         0: .line 33
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.carrotsearch.hppc.BitUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/carrotsearch/hppc/BitUtil;

  public static long pop_array(long[], int, int);
    descriptor: ([JII)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // long[] arr
        start local 1 // int wordOffset
        start local 2 // int numWords
         0: .line 41
            lconst_0
            lstore 3 /* popCount */
        start local 3 // long popCount
         1: .line 42
            iload 1 /* wordOffset */
            istore 5 /* i */
        start local 5 // int i
         2: iload 1 /* wordOffset */
            iload 2 /* numWords */
            iadd
            istore 6 /* end */
        start local 6 // int end
         3: goto 6
         4: .line 43
      StackMap locals: long int int
      StackMap stack:
            lload 3 /* popCount */
            aload 0 /* arr */
            iload 5 /* i */
            laload
            invokestatic java.lang.Long.bitCount:(J)I
            i2l
            ladd
            lstore 3 /* popCount */
         5: .line 42
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            iload 6 /* end */
            if_icmplt 4
        end local 6 // int end
        end local 5 // int i
         7: .line 45
            lload 3 /* popCount */
            lreturn
        end local 3 // long popCount
        end local 2 // int numWords
        end local 1 // int wordOffset
        end local 0 // long[] arr
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0         arr  [J
            0    8     1  wordOffset  I
            0    8     2    numWords  I
            1    8     3    popCount  J
            2    7     5           i  I
            3    7     6         end  I
    MethodParameters:
            Name  Flags
      arr         
      wordOffset  
      numWords    

  public static long pop_intersect(long[], long[], int, int);
    descriptor: ([J[JII)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // long[] arr1
        start local 1 // long[] arr2
        start local 2 // int wordOffset
        start local 3 // int numWords
         0: .line 51
            lconst_0
            lstore 4 /* popCount */
        start local 4 // long popCount
         1: .line 52
            iload 2 /* wordOffset */
            istore 6 /* i */
        start local 6 // int i
         2: iload 2 /* wordOffset */
            iload 3 /* numWords */
            iadd
            istore 7 /* end */
        start local 7 // int end
         3: goto 6
         4: .line 53
      StackMap locals: long int int
      StackMap stack:
            lload 4 /* popCount */
            aload 0 /* arr1 */
            iload 6 /* i */
            laload
            aload 1 /* arr2 */
            iload 6 /* i */
            laload
            land
            invokestatic java.lang.Long.bitCount:(J)I
            i2l
            ladd
            lstore 4 /* popCount */
         5: .line 52
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 6 /* i */
            iload 7 /* end */
            if_icmplt 4
        end local 7 // int end
        end local 6 // int i
         7: .line 55
            lload 4 /* popCount */
            lreturn
        end local 4 // long popCount
        end local 3 // int numWords
        end local 2 // int wordOffset
        end local 1 // long[] arr2
        end local 0 // long[] arr1
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        arr1  [J
            0    8     1        arr2  [J
            0    8     2  wordOffset  I
            0    8     3    numWords  I
            1    8     4    popCount  J
            2    7     6           i  I
            3    7     7         end  I
    MethodParameters:
            Name  Flags
      arr1        
      arr2        
      wordOffset  
      numWords    

  public static long pop_union(long[], long[], int, int);
    descriptor: ([J[JII)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // long[] arr1
        start local 1 // long[] arr2
        start local 2 // int wordOffset
        start local 3 // int numWords
         0: .line 61
            lconst_0
            lstore 4 /* popCount */
        start local 4 // long popCount
         1: .line 62
            iload 2 /* wordOffset */
            istore 6 /* i */
        start local 6 // int i
         2: iload 2 /* wordOffset */
            iload 3 /* numWords */
            iadd
            istore 7 /* end */
        start local 7 // int end
         3: goto 6
         4: .line 63
      StackMap locals: long int int
      StackMap stack:
            lload 4 /* popCount */
            aload 0 /* arr1 */
            iload 6 /* i */
            laload
            aload 1 /* arr2 */
            iload 6 /* i */
            laload
            lor
            invokestatic java.lang.Long.bitCount:(J)I
            i2l
            ladd
            lstore 4 /* popCount */
         5: .line 62
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 6 /* i */
            iload 7 /* end */
            if_icmplt 4
        end local 7 // int end
        end local 6 // int i
         7: .line 65
            lload 4 /* popCount */
            lreturn
        end local 4 // long popCount
        end local 3 // int numWords
        end local 2 // int wordOffset
        end local 1 // long[] arr2
        end local 0 // long[] arr1
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        arr1  [J
            0    8     1        arr2  [J
            0    8     2  wordOffset  I
            0    8     3    numWords  I
            1    8     4    popCount  J
            2    7     6           i  I
            3    7     7         end  I
    MethodParameters:
            Name  Flags
      arr1        
      arr2        
      wordOffset  
      numWords    

  public static long pop_andnot(long[], long[], int, int);
    descriptor: ([J[JII)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=8, args_size=4
        start local 0 // long[] arr1
        start local 1 // long[] arr2
        start local 2 // int wordOffset
        start local 3 // int numWords
         0: .line 71
            lconst_0
            lstore 4 /* popCount */
        start local 4 // long popCount
         1: .line 72
            iload 2 /* wordOffset */
            istore 6 /* i */
        start local 6 // int i
         2: iload 2 /* wordOffset */
            iload 3 /* numWords */
            iadd
            istore 7 /* end */
        start local 7 // int end
         3: goto 6
         4: .line 73
      StackMap locals: long int int
      StackMap stack:
            lload 4 /* popCount */
            aload 0 /* arr1 */
            iload 6 /* i */
            laload
            aload 1 /* arr2 */
            iload 6 /* i */
            laload
            ldc -1
            lxor
            land
            invokestatic java.lang.Long.bitCount:(J)I
            i2l
            ladd
            lstore 4 /* popCount */
         5: .line 72
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 6 /* i */
            iload 7 /* end */
            if_icmplt 4
        end local 7 // int end
        end local 6 // int i
         7: .line 75
            lload 4 /* popCount */
            lreturn
        end local 4 // long popCount
        end local 3 // int numWords
        end local 2 // int wordOffset
        end local 1 // long[] arr2
        end local 0 // long[] arr1
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        arr1  [J
            0    8     1        arr2  [J
            0    8     2  wordOffset  I
            0    8     3    numWords  I
            1    8     4    popCount  J
            2    7     6           i  I
            3    7     7         end  I
    MethodParameters:
            Name  Flags
      arr1        
      arr2        
      wordOffset  
      numWords    

  public static long pop_xor(long[], long[], int, int);
    descriptor: ([J[JII)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // long[] arr1
        start local 1 // long[] arr2
        start local 2 // int wordOffset
        start local 3 // int numWords
         0: .line 81
            lconst_0
            lstore 4 /* popCount */
        start local 4 // long popCount
         1: .line 82
            iload 2 /* wordOffset */
            istore 6 /* i */
        start local 6 // int i
         2: iload 2 /* wordOffset */
            iload 3 /* numWords */
            iadd
            istore 7 /* end */
        start local 7 // int end
         3: goto 6
         4: .line 83
      StackMap locals: long int int
      StackMap stack:
            lload 4 /* popCount */
            aload 0 /* arr1 */
            iload 6 /* i */
            laload
            aload 1 /* arr2 */
            iload 6 /* i */
            laload
            lxor
            invokestatic java.lang.Long.bitCount:(J)I
            i2l
            ladd
            lstore 4 /* popCount */
         5: .line 82
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 6 /* i */
            iload 7 /* end */
            if_icmplt 4
        end local 7 // int end
        end local 6 // int i
         7: .line 85
            lload 4 /* popCount */
            lreturn
        end local 4 // long popCount
        end local 3 // int numWords
        end local 2 // int wordOffset
        end local 1 // long[] arr2
        end local 0 // long[] arr1
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        arr1  [J
            0    8     1        arr2  [J
            0    8     2  wordOffset  I
            0    8     3    numWords  I
            1    8     4    popCount  J
            2    7     6           i  I
            3    7     7         end  I
    MethodParameters:
            Name  Flags
      arr1        
      arr2        
      wordOffset  
      numWords    

  public static int nextHighestPowerOfTwo(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int v
         0: .line 90
            iinc 0 /* v */ -1
         1: .line 91
            iload 0 /* v */
            iload 0 /* v */
            iconst_1
            ishr
            ior
            istore 0 /* v */
         2: .line 92
            iload 0 /* v */
            iload 0 /* v */
            iconst_2
            ishr
            ior
            istore 0 /* v */
         3: .line 93
            iload 0 /* v */
            iload 0 /* v */
            iconst_4
            ishr
            ior
            istore 0 /* v */
         4: .line 94
            iload 0 /* v */
            iload 0 /* v */
            bipush 8
            ishr
            ior
            istore 0 /* v */
         5: .line 95
            iload 0 /* v */
            iload 0 /* v */
            bipush 16
            ishr
            ior
            istore 0 /* v */
         6: .line 96
            iinc 0 /* v */ 1
         7: .line 97
            iload 0 /* v */
            ireturn
        end local 0 // int v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0     v  I
    MethodParameters:
      Name  Flags
      v     

  public static long nextHighestPowerOfTwo(long);
    descriptor: (J)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // long v
         0: .line 102
            lload 0 /* v */
            lconst_1
            lsub
            lstore 0 /* v */
         1: .line 103
            lload 0 /* v */
            lload 0 /* v */
            iconst_1
            lshr
            lor
            lstore 0 /* v */
         2: .line 104
            lload 0 /* v */
            lload 0 /* v */
            iconst_2
            lshr
            lor
            lstore 0 /* v */
         3: .line 105
            lload 0 /* v */
            lload 0 /* v */
            iconst_4
            lshr
            lor
            lstore 0 /* v */
         4: .line 106
            lload 0 /* v */
            lload 0 /* v */
            bipush 8
            lshr
            lor
            lstore 0 /* v */
         5: .line 107
            lload 0 /* v */
            lload 0 /* v */
            bipush 16
            lshr
            lor
            lstore 0 /* v */
         6: .line 108
            lload 0 /* v */
            lload 0 /* v */
            bipush 32
            lshr
            lor
            lstore 0 /* v */
         7: .line 109
            lload 0 /* v */
            lconst_1
            ladd
            lstore 0 /* v */
         8: .line 110
            lload 0 /* v */
            lreturn
        end local 0 // long v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0     v  J
    MethodParameters:
      Name  Flags
      v     
}
SourceFile: "BitUtil.java"