UNumbersKt.smali

.class public final Lkotlin/UNumbersKt;
.super Ljava/lang/Object;
.source "UNumbers.kt"


# annotations
.annotation runtime Lkotlin/Metadata;
    d1 = {
        "\u0000&\n\u0000\n\u0002\u0010\u0008\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0002\u0008)\u001a\u0017\u0010\u0000\u001a\u00020\u0001*\u00020\u0002H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u0003\u0010\u0004\u001a\u0017\u0010\u0000\u001a\u00020\u0001*\u00020\u0005H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u0006\u0010\u0007\u001a\u0017\u0010\u0000\u001a\u00020\u0001*\u00020\u0008H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\t\u0010\n\u001a\u0017\u0010\u0000\u001a\u00020\u0001*\u00020\u000bH\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u000c\u0010\r\u001a\u0017\u0010\u000e\u001a\u00020\u0001*\u00020\u0002H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u000f\u0010\u0004\u001a\u0017\u0010\u000e\u001a\u00020\u0001*\u00020\u0005H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u0010\u0010\u0007\u001a\u0017\u0010\u000e\u001a\u00020\u0001*\u00020\u0008H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u0011\u0010\n\u001a\u0017\u0010\u000e\u001a\u00020\u0001*\u00020\u000bH\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u0012\u0010\r\u001a\u0017\u0010\u0013\u001a\u00020\u0001*\u00020\u0002H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u0014\u0010\u0004\u001a\u0017\u0010\u0013\u001a\u00020\u0001*\u00020\u0005H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u0015\u0010\u0007\u001a\u0017\u0010\u0013\u001a\u00020\u0001*\u00020\u0008H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u0016\u0010\n\u001a\u0017\u0010\u0013\u001a\u00020\u0001*\u00020\u000bH\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u0017\u0010\r\u001a\u001f\u0010\u0018\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u001a\u0010\u001b\u001a\u001f\u0010\u0018\u001a\u00020\u0005*\u00020\u00052\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u001c\u0010\u001d\u001a\u001f\u0010\u0018\u001a\u00020\u0008*\u00020\u00082\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u001e\u0010\u001f\u001a\u001f\u0010\u0018\u001a\u00020\u000b*\u00020\u000b2\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008 \u0010!\u001a\u001f\u0010\"\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008#\u0010\u001b\u001a\u001f\u0010\"\u001a\u00020\u0005*\u00020\u00052\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008$\u0010\u001d\u001a\u001f\u0010\"\u001a\u00020\u0008*\u00020\u00082\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008%\u0010\u001f\u001a\u001f\u0010\"\u001a\u00020\u000b*\u00020\u000b2\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008&\u0010!\u001a\u0017\u0010\'\u001a\u00020\u0002*\u00020\u0002H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008(\u0010)\u001a\u0017\u0010\'\u001a\u00020\u0005*\u00020\u0005H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008*\u0010\u0007\u001a\u0017\u0010\'\u001a\u00020\u0008*\u00020\u0008H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008+\u0010,\u001a\u0017\u0010\'\u001a\u00020\u000b*\u00020\u000bH\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008-\u0010.\u001a\u0017\u0010/\u001a\u00020\u0002*\u00020\u0002H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u00080\u0010)\u001a\u0017\u0010/\u001a\u00020\u0005*\u00020\u0005H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u00081\u0010\u0007\u001a\u0017\u0010/\u001a\u00020\u0008*\u00020\u0008H\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u00082\u0010,\u001a\u0017\u0010/\u001a\u00020\u000b*\u00020\u000bH\u0087\u0008\u00f8\u0001\u0000\u00a2\u0006\u0004\u00083\u0010.\u0082\u0002\u0004\n\u0002\u0008\u0019\u00a8\u00064"
    }
    d2 = {
        "countLeadingZeroBits",
        "",
        "Lkotlin/UByte;",
        "countLeadingZeroBits-7apg3OU",
        "(B)I",
        "Lkotlin/UInt;",
        "countLeadingZeroBits-WZ4Q5Ns",
        "(I)I",
        "Lkotlin/ULong;",
        "countLeadingZeroBits-VKZWuLQ",
        "(J)I",
        "Lkotlin/UShort;",
        "countLeadingZeroBits-xj2QHRw",
        "(S)I",
        "countOneBits",
        "countOneBits-7apg3OU",
        "countOneBits-WZ4Q5Ns",
        "countOneBits-VKZWuLQ",
        "countOneBits-xj2QHRw",
        "countTrailingZeroBits",
        "countTrailingZeroBits-7apg3OU",
        "countTrailingZeroBits-WZ4Q5Ns",
        "countTrailingZeroBits-VKZWuLQ",
        "countTrailingZeroBits-xj2QHRw",
        "rotateLeft",
        "bitCount",
        "rotateLeft-LxnNnR4",
        "(BI)B",
        "rotateLeft-V7xB4Y4",
        "(II)I",
        "rotateLeft-JSWoG40",
        "(JI)J",
        "rotateLeft-olVBNx4",
        "(SI)S",
        "rotateRight",
        "rotateRight-LxnNnR4",
        "rotateRight-V7xB4Y4",
        "rotateRight-JSWoG40",
        "rotateRight-olVBNx4",
        "takeHighestOneBit",
        "takeHighestOneBit-7apg3OU",
        "(B)B",
        "takeHighestOneBit-WZ4Q5Ns",
        "takeHighestOneBit-VKZWuLQ",
        "(J)J",
        "takeHighestOneBit-xj2QHRw",
        "(S)S",
        "takeLowestOneBit",
        "takeLowestOneBit-7apg3OU",
        "takeLowestOneBit-WZ4Q5Ns",
        "takeLowestOneBit-VKZWuLQ",
        "takeLowestOneBit-xj2QHRw",
        "kotlin-stdlib"
    }
    k = 0x2
    mv = {
        0x1,
        0x6,
        0x0
    }
    xi = 0x30
.end annotation


# direct methods
.method private static final countLeadingZeroBits-7apg3OU(B)I
    .registers 1

    and-int/lit16 p0, p0, 0xff

    .line 169
    invoke-static {p0}, Ljava/lang/Integer;->numberOfLeadingZeros(I)I

    move-result p0

    add-int/lit8 p0, p0, -0x18

    return p0
.end method

.method private static final countLeadingZeroBits-VKZWuLQ(J)I
    .registers 2

    .line 97
    invoke-static {p0, p1}, Ljava/lang/Long;->numberOfLeadingZeros(J)I

    move-result p0

    return p0
.end method

.method private static final countLeadingZeroBits-WZ4Q5Ns(I)I
    .registers 1

    .line 23
    invoke-static {p0}, Ljava/lang/Integer;->numberOfLeadingZeros(I)I

    move-result p0

    return p0
.end method

.method private static final countLeadingZeroBits-xj2QHRw(S)I
    .registers 2

    const v0, 0xffff

    and-int/2addr p0, v0

    .line 242
    invoke-static {p0}, Ljava/lang/Integer;->numberOfLeadingZeros(I)I

    move-result p0

    add-int/lit8 p0, p0, -0x10

    return p0
.end method

.method private static final countOneBits-7apg3OU(B)I
    .registers 1

    and-int/lit16 p0, p0, 0xff

    .line 161
    invoke-static {p0}, Lkotlin/UInt;->constructor-impl(I)I

    move-result p0

    invoke-static {p0}, Ljava/lang/Integer;->bitCount(I)I

    move-result p0

    return p0
.end method

.method private static final countOneBits-VKZWuLQ(J)I
    .registers 2

    .line 89
    invoke-static {p0, p1}, Ljava/lang/Long;->bitCount(J)I

    move-result p0

    return p0
.end method

.method private static final countOneBits-WZ4Q5Ns(I)I
    .registers 1

    .line 15
    invoke-static {p0}, Ljava/lang/Integer;->bitCount(I)I

    move-result p0

    return p0
.end method

.method private static final countOneBits-xj2QHRw(S)I
    .registers 2

    const v0, 0xffff

    and-int/2addr p0, v0

    .line 234
    invoke-static {p0}, Lkotlin/UInt;->constructor-impl(I)I

    move-result p0

    invoke-static {p0}, Ljava/lang/Integer;->bitCount(I)I

    move-result p0

    return p0
.end method

.method private static final countTrailingZeroBits-7apg3OU(B)I
    .registers 1

    or-int/lit16 p0, p0, 0x100

    .line 177
    invoke-static {p0}, Ljava/lang/Integer;->numberOfTrailingZeros(I)I

    move-result p0

    return p0
.end method

.method private static final countTrailingZeroBits-VKZWuLQ(J)I
    .registers 2

    .line 105
    invoke-static {p0, p1}, Ljava/lang/Long;->numberOfTrailingZeros(J)I

    move-result p0

    return p0
.end method

.method private static final countTrailingZeroBits-WZ4Q5Ns(I)I
    .registers 1

    .line 31
    invoke-static {p0}, Ljava/lang/Integer;->numberOfTrailingZeros(I)I

    move-result p0

    return p0
.end method

.method private static final countTrailingZeroBits-xj2QHRw(S)I
    .registers 2

    const/high16 v0, 0x10000

    or-int/2addr p0, v0

    .line 250
    invoke-static {p0}, Ljava/lang/Integer;->numberOfTrailingZeros(I)I

    move-result p0

    return p0
.end method

.method private static final rotateLeft-JSWoG40(JI)J
    .registers 3

    .line 138
    invoke-static {p0, p1, p2}, Ljava/lang/Long;->rotateLeft(JI)J

    move-result-wide p0

    invoke-static {p0, p1}, Lkotlin/ULong;->constructor-impl(J)J

    move-result-wide p0

    return-wide p0
.end method

.method private static final rotateLeft-LxnNnR4(BI)B
    .registers 2

    .line 211
    invoke-static {p0, p1}, Lkotlin/NumbersKt;->rotateLeft(BI)B

    move-result p0

    invoke-static {p0}, Lkotlin/UByte;->constructor-impl(B)B

    move-result p0

    return p0
.end method

.method private static final rotateLeft-V7xB4Y4(II)I
    .registers 2

    .line 64
    invoke-static {p0, p1}, Ljava/lang/Integer;->rotateLeft(II)I

    move-result p0

    invoke-static {p0}, Lkotlin/UInt;->constructor-impl(I)I

    move-result p0

    return p0
.end method

.method private static final rotateLeft-olVBNx4(SI)S
    .registers 2

    .line 284
    invoke-static {p0, p1}, Lkotlin/NumbersKt;->rotateLeft(SI)S

    move-result p0

    invoke-static {p0}, Lkotlin/UShort;->constructor-impl(S)S

    move-result p0

    return p0
.end method

.method private static final rotateRight-JSWoG40(JI)J
    .registers 3

    .line 153
    invoke-static {p0, p1, p2}, Ljava/lang/Long;->rotateRight(JI)J

    move-result-wide p0

    invoke-static {p0, p1}, Lkotlin/ULong;->constructor-impl(J)J

    move-result-wide p0

    return-wide p0
.end method

.method private static final rotateRight-LxnNnR4(BI)B
    .registers 2

    .line 226
    invoke-static {p0, p1}, Lkotlin/NumbersKt;->rotateRight(BI)B

    move-result p0

    invoke-static {p0}, Lkotlin/UByte;->constructor-impl(B)B

    move-result p0

    return p0
.end method

.method private static final rotateRight-V7xB4Y4(II)I
    .registers 2

    .line 80
    invoke-static {p0, p1}, Ljava/lang/Integer;->rotateRight(II)I

    move-result p0

    invoke-static {p0}, Lkotlin/UInt;->constructor-impl(I)I

    move-result p0

    return p0
.end method

.method private static final rotateRight-olVBNx4(SI)S
    .registers 2

    .line 299
    invoke-static {p0, p1}, Lkotlin/NumbersKt;->rotateRight(SI)S

    move-result p0

    invoke-static {p0}, Lkotlin/UShort;->constructor-impl(S)S

    move-result p0

    return p0
.end method

.method private static final takeHighestOneBit-7apg3OU(B)B
    .registers 1

    and-int/lit16 p0, p0, 0xff

    .line 186
    invoke-static {p0}, Ljava/lang/Integer;->highestOneBit(I)I

    move-result p0

    int-to-byte p0, p0

    invoke-static {p0}, Lkotlin/UByte;->constructor-impl(B)B

    move-result p0

    return p0
.end method

.method private static final takeHighestOneBit-VKZWuLQ(J)J
    .registers 2

    .line 114
    invoke-static {p0, p1}, Ljava/lang/Long;->highestOneBit(J)J

    move-result-wide p0

    invoke-static {p0, p1}, Lkotlin/ULong;->constructor-impl(J)J

    move-result-wide p0

    return-wide p0
.end method

.method private static final takeHighestOneBit-WZ4Q5Ns(I)I
    .registers 1

    .line 40
    invoke-static {p0}, Ljava/lang/Integer;->highestOneBit(I)I

    move-result p0

    invoke-static {p0}, Lkotlin/UInt;->constructor-impl(I)I

    move-result p0

    return p0
.end method

.method private static final takeHighestOneBit-xj2QHRw(S)S
    .registers 2

    const v0, 0xffff

    and-int/2addr p0, v0

    .line 259
    invoke-static {p0}, Ljava/lang/Integer;->highestOneBit(I)I

    move-result p0

    int-to-short p0, p0

    invoke-static {p0}, Lkotlin/UShort;->constructor-impl(S)S

    move-result p0

    return p0
.end method

.method private static final takeLowestOneBit-7apg3OU(B)B
    .registers 1

    and-int/lit16 p0, p0, 0xff

    .line 195
    invoke-static {p0}, Ljava/lang/Integer;->lowestOneBit(I)I

    move-result p0

    int-to-byte p0, p0

    invoke-static {p0}, Lkotlin/UByte;->constructor-impl(B)B

    move-result p0

    return p0
.end method

.method private static final takeLowestOneBit-VKZWuLQ(J)J
    .registers 2

    .line 123
    invoke-static {p0, p1}, Ljava/lang/Long;->lowestOneBit(J)J

    move-result-wide p0

    invoke-static {p0, p1}, Lkotlin/ULong;->constructor-impl(J)J

    move-result-wide p0

    return-wide p0
.end method

.method private static final takeLowestOneBit-WZ4Q5Ns(I)I
    .registers 1

    .line 49
    invoke-static {p0}, Ljava/lang/Integer;->lowestOneBit(I)I

    move-result p0

    invoke-static {p0}, Lkotlin/UInt;->constructor-impl(I)I

    move-result p0

    return p0
.end method

.method private static final takeLowestOneBit-xj2QHRw(S)S
    .registers 2

    const v0, 0xffff

    and-int/2addr p0, v0

    .line 268
    invoke-static {p0}, Ljava/lang/Integer;->lowestOneBit(I)I

    move-result p0

    int-to-short p0, p0

    invoke-static {p0}, Lkotlin/UShort;->constructor-impl(S)S

    move-result p0

    return p0
.end method