- Decompiled RealRacing3 v14.0.1 (versionCode 14001) - Patched EnvironmentDataContainer.getLatestAppVersionCheckResult() to always return 0 (APP_VERSION_OK) - Copied all offline managers from v13: LocalSaveManager, OfflineModeManager, OfflineCurrencyManager, OfflineEventsManager - Applied delayed initialization fix to MainActivity (500ms Handler.postDelayed) - Added MainActivity\ inner class with try-catch wrapper - Server killswitch completely bypassed - game will work after March 2026 shutdown - Compatible with v13 APKs (same signing key: rr3-release.keystore) This is the ULTIMATE EDITION: Latest game version + no killswitch + offline mode + crash fixed Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2013 lines
39 KiB
Smali
2013 lines
39 KiB
Smali
.class public final Landroidx/collection/MutableLongObjectMap;
|
|
.super Landroidx/collection/LongObjectMap;
|
|
.source "SourceFile"
|
|
|
|
|
|
# annotations
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"<V:",
|
|
"Ljava/lang/Object;",
|
|
">",
|
|
"Landroidx/collection/LongObjectMap<",
|
|
"TV;>;"
|
|
}
|
|
.end annotation
|
|
|
|
.annotation build Lkotlin/jvm/internal/SourceDebugExtension;
|
|
value = {
|
|
"SMAP\nLongObjectMap.kt\nKotlin\n*S Kotlin\n*F\n+ 1 LongObjectMap.kt\nandroidx/collection/MutableLongObjectMap\n+ 2 fake.kt\nkotlin/jvm/internal/FakeKt\n+ 3 ScatterMap.kt\nandroidx/collection/ScatterMapKt\n+ 4 LongObjectMap.kt\nandroidx/collection/LongObjectMap\n+ 5 LongSet.kt\nandroidx/collection/LongSetKt\n+ 6 LongSet.kt\nandroidx/collection/LongSet\n+ 7 LongList.kt\nandroidx/collection/LongList\n*L\n1#1,1034:1\n820#1,2:1187\n820#1,2:1201\n1024#1,2:1204\n1028#1,5:1212\n1024#1,2:1243\n1028#1,5:1251\n1024#1,2:1268\n1028#1,5:1276\n1024#1,2:1282\n1028#1,5:1290\n1#2:1035\n1672#3,6:1036\n1826#3:1052\n1688#3:1056\n1619#3:1073\n1615#3:1076\n1795#3,3:1081\n1809#3,3:1085\n1733#3:1089\n1721#3:1091\n1715#3:1092\n1728#3:1097\n1818#3:1099\n1619#3:1113\n1615#3:1116\n1795#3,3:1121\n1809#3,3:1125\n1733#3:1129\n1721#3:1131\n1715#3:1132\n1728#3:1137\n1818#3:1139\n1826#3:1154\n1688#3:1158\n1826#3:1179\n1688#3:1183\n1672#3,6:1206\n1672#3,6:1217\n1615#3:1226\n1619#3:1227\n1795#3,3:1228\n1809#3,3:1231\n1733#3:1234\n1721#3:1235\n1715#3:1236\n1728#3:1237\n1818#3:1238\n1682#3:1239\n1661#3:1240\n1680#3:1241\n1661#3:1242\n1672#3,6:1245\n1795#3,3:1256\n1826#3:1259\n1715#3:1260\n1685#3:1261\n1661#3:1262\n1615#3:1266\n1619#3:1267\n1672#3,6:1270\n1661#3:1281\n1672#3,6:1284\n1672#3,6:1295\n1672#3,6:1301\n382#4,4:1042\n354#4,6:1046\n364#4,3:1053\n367#4,2:1057\n387#4,2:1059\n370#4,6:1061\n389#4:1067\n619#4:1068\n620#4:1072\n622#4,2:1074\n624#4,4:1077\n628#4:1084\n629#4:1088\n630#4:1090\n631#4,4:1093\n637#4:1098\n638#4,8:1100\n619#4:1108\n620#4:1112\n622#4,2:1114\n624#4,4:1117\n628#4:1124\n629#4:1128\n630#4:1130\n631#4,4:1133\n637#4:1138\n638#4,8:1140\n354#4,6:1148\n364#4,3:1155\n367#4,9:1159\n849#5,3:1069\n849#5,3:1109\n849#5,3:1223\n849#5,3:1263\n262#6,4:1168\n232#6,7:1172\n243#6,3:1180\n246#6,2:1184\n266#6:1186\n267#6:1189\n249#6,6:1190\n268#6:1196\n253#7,4:1197\n258#7:1203\n*S KotlinDebug\n*F\n+ 1 LongObjectMap.kt\nandroidx/collection/MutableLongObjectMap\n*L\n837#1:1187,2\n846#1:1201,2\n856#1:1204,2\n856#1:1212,5\n920#1:1243,2\n920#1:1251,5\n994#1:1268,2\n994#1:1276,5\n1010#1:1282,2\n1010#1:1290,5\n713#1:1036,6\n766#1:1052\n766#1:1056\n782#1:1073\n782#1:1076\n782#1:1081,3\n782#1:1085,3\n782#1:1089\n782#1:1091\n782#1:1092\n782#1:1097\n782#1:1099\n794#1:1113\n794#1:1116\n794#1:1121,3\n794#1:1125,3\n794#1:1129\n794#1:1131\n794#1:1132\n794#1:1137\n794#1:1139\n808#1:1154\n808#1:1158\n836#1:1179\n836#1:1183\n856#1:1206,6\n871#1:1217,6\n886#1:1226\n887#1:1227\n894#1:1228,3\n895#1:1231,3\n896#1:1234\n897#1:1235\n897#1:1236\n901#1:1237\n904#1:1238\n913#1:1239\n913#1:1240\n919#1:1241\n919#1:1242\n920#1:1245,6\n935#1:1256,3\n936#1:1259\n938#1:1260\n989#1:1261\n989#1:1262\n992#1:1266\n994#1:1267\n994#1:1270,6\n1008#1:1281\n1010#1:1284,6\n1025#1:1295,6\n1031#1:1301,6\n766#1:1042,4\n766#1:1046,6\n766#1:1053,3\n766#1:1057,2\n766#1:1059,2\n766#1:1061,6\n766#1:1067\n782#1:1068\n782#1:1072\n782#1:1074,2\n782#1:1077,4\n782#1:1084\n782#1:1088\n782#1:1090\n782#1:1093,4\n782#1:1098\n782#1:1100,8\n794#1:1108\n794#1:1112\n794#1:1114,2\n794#1:1117,4\n794#1:1124\n794#1:1128\n794#1:1130\n794#1:1133,4\n794#1:1138\n794#1:1140,8\n808#1:1148,6\n808#1:1155,3\n808#1:1159,9\n782#1:1069,3\n794#1:1109,3\n885#1:1223,3\n991#1:1263,3\n836#1:1168,4\n836#1:1172,7\n836#1:1180,3\n836#1:1184,2\n836#1:1186\n836#1:1189\n836#1:1190,6\n836#1:1196\n845#1:1197,4\n845#1:1203\n*E\n"
|
|
}
|
|
.end annotation
|
|
|
|
|
|
# instance fields
|
|
.field private growthLimit:I
|
|
|
|
|
|
# direct methods
|
|
.method public constructor <init>()V
|
|
.locals 3
|
|
|
|
.line 0
|
|
const/4 v0, 0x1
|
|
|
|
const/4 v1, 0x0
|
|
|
|
const/4 v2, 0x0
|
|
|
|
invoke-direct {p0, v2, v0, v1}, Landroidx/collection/MutableLongObjectMap;-><init>(IILkotlin/jvm/internal/DefaultConstructorMarker;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public constructor <init>(I)V
|
|
.locals 1
|
|
|
|
const/4 v0, 0x0
|
|
|
|
.line 680
|
|
invoke-direct {p0, v0}, Landroidx/collection/LongObjectMap;-><init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
|
|
|
|
if-ltz p1, :cond_0
|
|
|
|
.line 686
|
|
invoke-static {p1}, Landroidx/collection/ScatterMapKt;->unloadedCapacity(I)I
|
|
|
|
move-result p1
|
|
|
|
invoke-direct {p0, p1}, Landroidx/collection/MutableLongObjectMap;->initializeStorage(I)V
|
|
|
|
return-void
|
|
|
|
.line 685
|
|
:cond_0
|
|
new-instance p1, Ljava/lang/IllegalArgumentException;
|
|
|
|
const-string v0, "Capacity must be a positive value."
|
|
|
|
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
|
|
|
|
move-result-object v0
|
|
|
|
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
|
|
|
|
throw p1
|
|
.end method
|
|
|
|
.method public synthetic constructor <init>(IILkotlin/jvm/internal/DefaultConstructorMarker;)V
|
|
.locals 0
|
|
|
|
and-int/lit8 p2, p2, 0x1
|
|
|
|
if-eqz p2, :cond_0
|
|
|
|
const/4 p1, 0x6
|
|
|
|
.line 678
|
|
:cond_0
|
|
invoke-direct {p0, p1}, Landroidx/collection/MutableLongObjectMap;-><init>(I)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method private final adjustStorage()V
|
|
.locals 6
|
|
|
|
iget v0, p0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
const/16 v1, 0x8
|
|
|
|
if-le v0, v1, :cond_0
|
|
|
|
iget v0, p0, Landroidx/collection/LongObjectMap;->_size:I
|
|
|
|
int-to-long v0, v0
|
|
|
|
.line 970
|
|
invoke-static {v0, v1}, Lkotlin/ULong;->constructor-impl(J)J
|
|
|
|
move-result-wide v0
|
|
|
|
const-wide/16 v2, 0x20
|
|
|
|
mul-long/2addr v0, v2
|
|
|
|
invoke-static {v0, v1}, Lkotlin/ULong;->constructor-impl(J)J
|
|
|
|
move-result-wide v0
|
|
|
|
iget v2, p0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
int-to-long v2, v2
|
|
|
|
invoke-static {v2, v3}, Lkotlin/ULong;->constructor-impl(J)J
|
|
|
|
move-result-wide v2
|
|
|
|
const-wide/16 v4, 0x19
|
|
|
|
mul-long/2addr v2, v4
|
|
|
|
invoke-static {v2, v3}, Lkotlin/ULong;->constructor-impl(J)J
|
|
|
|
move-result-wide v2
|
|
|
|
invoke-static {v0, v1, v2, v3}, Ljava/lang/Long;->compareUnsigned(JJ)I
|
|
|
|
move-result v0
|
|
|
|
if-gtz v0, :cond_0
|
|
|
|
.line 971
|
|
invoke-direct {p0}, Landroidx/collection/MutableLongObjectMap;->removeDeletedMarkers()V
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
iget v0, p0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
.line 973
|
|
invoke-static {v0}, Landroidx/collection/ScatterMapKt;->nextCapacity(I)I
|
|
|
|
move-result v0
|
|
|
|
invoke-direct {p0, v0}, Landroidx/collection/MutableLongObjectMap;->resizeStorage(I)V
|
|
|
|
:goto_0
|
|
return-void
|
|
.end method
|
|
|
|
.method private final findAbsoluteInsertIndex(J)I
|
|
.locals 21
|
|
|
|
move-object/from16 v0, p0
|
|
|
|
.line 849
|
|
invoke-static/range {p1 .. p2}, Ljava/lang/Long;->hashCode(J)I
|
|
|
|
move-result v1
|
|
|
|
const v2, -0x3361d2af # -8.293031E7f
|
|
|
|
mul-int/2addr v1, v2
|
|
|
|
shl-int/lit8 v2, v1, 0x10
|
|
|
|
xor-int/2addr v1, v2
|
|
|
|
ushr-int/lit8 v2, v1, 0x7
|
|
|
|
and-int/lit8 v1, v1, 0x7f
|
|
|
|
iget v3, v0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
and-int v4, v2, v3
|
|
|
|
const/4 v6, 0x0
|
|
|
|
:goto_0
|
|
iget-object v7, v0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
shr-int/lit8 v8, v4, 0x3
|
|
|
|
and-int/lit8 v9, v4, 0x7
|
|
|
|
shl-int/lit8 v9, v9, 0x3
|
|
|
|
.line 1797
|
|
aget-wide v10, v7, v8
|
|
|
|
ushr-long/2addr v10, v9
|
|
|
|
const/4 v12, 0x1
|
|
|
|
add-int/2addr v8, v12
|
|
|
|
aget-wide v13, v7, v8
|
|
|
|
rsub-int/lit8 v7, v9, 0x40
|
|
|
|
shl-long v7, v13, v7
|
|
|
|
int-to-long v13, v9
|
|
|
|
neg-long v13, v13
|
|
|
|
const/16 v9, 0x3f
|
|
|
|
shr-long/2addr v13, v9
|
|
|
|
and-long/2addr v7, v13
|
|
|
|
or-long/2addr v7, v10
|
|
|
|
int-to-long v9, v1
|
|
|
|
const-wide v13, 0x101010101010101L
|
|
|
|
mul-long v15, v9, v13
|
|
|
|
move/from16 v17, v6
|
|
|
|
xor-long v5, v7, v15
|
|
|
|
sub-long v13, v5, v13
|
|
|
|
not-long v5, v5
|
|
|
|
and-long/2addr v5, v13
|
|
|
|
const-wide v13, -0x7f7f7f7f7f7f7f80L # -2.937446524422997E-306
|
|
|
|
and-long/2addr v5, v13
|
|
|
|
:goto_1
|
|
const-wide/16 v15, 0x0
|
|
|
|
cmp-long v18, v5, v15
|
|
|
|
if-eqz v18, :cond_1
|
|
|
|
.line 1715
|
|
invoke-static {v5, v6}, Ljava/lang/Long;->numberOfTrailingZeros(J)I
|
|
|
|
move-result v15
|
|
|
|
shr-int/lit8 v15, v15, 0x3
|
|
|
|
add-int/2addr v15, v4
|
|
|
|
and-int/2addr v15, v3
|
|
|
|
iget-object v11, v0, Landroidx/collection/LongObjectMap;->keys:[J
|
|
|
|
.line 898
|
|
aget-wide v19, v11, v15
|
|
|
|
cmp-long v11, v19, p1
|
|
|
|
if-nez v11, :cond_0
|
|
|
|
return v15
|
|
|
|
:cond_0
|
|
const-wide/16 v15, 0x1
|
|
|
|
sub-long v15, v5, v15
|
|
|
|
and-long/2addr v5, v15
|
|
|
|
goto :goto_1
|
|
|
|
:cond_1
|
|
not-long v5, v7
|
|
|
|
const/4 v11, 0x6
|
|
|
|
shl-long/2addr v5, v11
|
|
|
|
and-long/2addr v5, v7
|
|
|
|
and-long/2addr v5, v13
|
|
|
|
cmp-long v5, v5, v15
|
|
|
|
if-eqz v5, :cond_5
|
|
|
|
.line 912
|
|
invoke-direct {v0, v2}, Landroidx/collection/MutableLongObjectMap;->findFirstAvailableSlot(I)I
|
|
|
|
move-result v1
|
|
|
|
iget v3, v0, Landroidx/collection/MutableLongObjectMap;->growthLimit:I
|
|
|
|
const-wide/16 v4, 0xff
|
|
|
|
if-nez v3, :cond_3
|
|
|
|
iget-object v3, v0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
shr-int/lit8 v6, v1, 0x3
|
|
|
|
.line 1661
|
|
aget-wide v6, v3, v6
|
|
|
|
and-int/lit8 v3, v1, 0x7
|
|
|
|
shl-int/lit8 v3, v3, 0x3
|
|
|
|
shr-long/2addr v6, v3
|
|
|
|
and-long/2addr v6, v4
|
|
|
|
const-wide/16 v13, 0xfe
|
|
|
|
cmp-long v3, v6, v13
|
|
|
|
if-nez v3, :cond_2
|
|
|
|
goto :goto_2
|
|
|
|
.line 914
|
|
:cond_2
|
|
invoke-direct/range {p0 .. p0}, Landroidx/collection/MutableLongObjectMap;->adjustStorage()V
|
|
|
|
.line 915
|
|
invoke-direct {v0, v2}, Landroidx/collection/MutableLongObjectMap;->findFirstAvailableSlot(I)I
|
|
|
|
move-result v1
|
|
|
|
:cond_3
|
|
:goto_2
|
|
iget v2, v0, Landroidx/collection/LongObjectMap;->_size:I
|
|
|
|
add-int/2addr v2, v12
|
|
|
|
iput v2, v0, Landroidx/collection/LongObjectMap;->_size:I
|
|
|
|
iget v2, v0, Landroidx/collection/MutableLongObjectMap;->growthLimit:I
|
|
|
|
iget-object v3, v0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
shr-int/lit8 v6, v1, 0x3
|
|
|
|
.line 1661
|
|
aget-wide v7, v3, v6
|
|
|
|
and-int/lit8 v11, v1, 0x7
|
|
|
|
shl-int/lit8 v11, v11, 0x3
|
|
|
|
shr-long v13, v7, v11
|
|
|
|
and-long/2addr v13, v4
|
|
|
|
const-wide/16 v15, 0x80
|
|
|
|
cmp-long v13, v13, v15
|
|
|
|
if-nez v13, :cond_4
|
|
|
|
move/from16 v18, v12
|
|
|
|
goto :goto_3
|
|
|
|
:cond_4
|
|
const/16 v18, 0x0
|
|
|
|
:goto_3
|
|
sub-int v2, v2, v18
|
|
|
|
iput v2, v0, Landroidx/collection/MutableLongObjectMap;->growthLimit:I
|
|
|
|
shl-long v12, v4, v11
|
|
|
|
not-long v12, v12
|
|
|
|
and-long/2addr v7, v12
|
|
|
|
shl-long v11, v9, v11
|
|
|
|
or-long/2addr v7, v11
|
|
|
|
.line 1676
|
|
aput-wide v7, v3, v6
|
|
|
|
iget v2, v0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
add-int/lit8 v6, v1, -0x7
|
|
|
|
and-int/2addr v6, v2
|
|
|
|
and-int/lit8 v2, v2, 0x7
|
|
|
|
add-int/2addr v6, v2
|
|
|
|
shr-int/lit8 v2, v6, 0x3
|
|
|
|
and-int/lit8 v6, v6, 0x7
|
|
|
|
shl-int/lit8 v6, v6, 0x3
|
|
|
|
aget-wide v7, v3, v2
|
|
|
|
shl-long/2addr v4, v6
|
|
|
|
not-long v4, v4
|
|
|
|
and-long/2addr v4, v7
|
|
|
|
shl-long v6, v9, v6
|
|
|
|
or-long/2addr v4, v6
|
|
|
|
aput-wide v4, v3, v2
|
|
|
|
return v1
|
|
|
|
:cond_5
|
|
add-int/lit8 v6, v17, 0x8
|
|
|
|
add-int/2addr v4, v6
|
|
|
|
and-int/2addr v4, v3
|
|
|
|
goto/16 :goto_0
|
|
.end method
|
|
|
|
.method private final findFirstAvailableSlot(I)I
|
|
.locals 9
|
|
|
|
iget v0, p0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
and-int/2addr p1, v0
|
|
|
|
const/4 v1, 0x0
|
|
|
|
:goto_0
|
|
iget-object v2, p0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
shr-int/lit8 v3, p1, 0x3
|
|
|
|
and-int/lit8 v4, p1, 0x7
|
|
|
|
shl-int/lit8 v4, v4, 0x3
|
|
|
|
.line 1797
|
|
aget-wide v5, v2, v3
|
|
|
|
ushr-long/2addr v5, v4
|
|
|
|
add-int/lit8 v3, v3, 0x1
|
|
|
|
aget-wide v7, v2, v3
|
|
|
|
rsub-int/lit8 v2, v4, 0x40
|
|
|
|
shl-long v2, v7, v2
|
|
|
|
int-to-long v7, v4
|
|
|
|
neg-long v7, v7
|
|
|
|
const/16 v4, 0x3f
|
|
|
|
shr-long/2addr v7, v4
|
|
|
|
and-long/2addr v2, v7
|
|
|
|
or-long/2addr v2, v5
|
|
|
|
not-long v4, v2
|
|
|
|
const/4 v6, 0x7
|
|
|
|
shl-long/2addr v4, v6
|
|
|
|
and-long/2addr v2, v4
|
|
|
|
const-wide v4, -0x7f7f7f7f7f7f7f80L # -2.937446524422997E-306
|
|
|
|
and-long/2addr v2, v4
|
|
|
|
const-wide/16 v4, 0x0
|
|
|
|
cmp-long v4, v2, v4
|
|
|
|
if-eqz v4, :cond_0
|
|
|
|
.line 1715
|
|
invoke-static {v2, v3}, Ljava/lang/Long;->numberOfTrailingZeros(J)I
|
|
|
|
move-result v1
|
|
|
|
shr-int/lit8 v1, v1, 0x3
|
|
|
|
add-int/2addr p1, v1
|
|
|
|
and-int/2addr p1, v0
|
|
|
|
return p1
|
|
|
|
:cond_0
|
|
add-int/lit8 v1, v1, 0x8
|
|
|
|
add-int/2addr p1, v1
|
|
|
|
and-int/2addr p1, v0
|
|
|
|
goto :goto_0
|
|
.end method
|
|
|
|
.method private final initializeGrowth()V
|
|
.locals 2
|
|
|
|
.line 718
|
|
invoke-virtual {p0}, Landroidx/collection/LongObjectMap;->getCapacity()I
|
|
|
|
move-result v0
|
|
|
|
invoke-static {v0}, Landroidx/collection/ScatterMapKt;->loadedCapacity(I)I
|
|
|
|
move-result v0
|
|
|
|
iget v1, p0, Landroidx/collection/LongObjectMap;->_size:I
|
|
|
|
sub-int/2addr v0, v1
|
|
|
|
iput v0, p0, Landroidx/collection/MutableLongObjectMap;->growthLimit:I
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method private final initializeMetadata(I)V
|
|
.locals 8
|
|
|
|
if-nez p1, :cond_0
|
|
|
|
.line 705
|
|
sget-object v0, Landroidx/collection/ScatterMapKt;->EmptyGroup:[J
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
add-int/lit8 v0, p1, 0xf
|
|
|
|
and-int/lit8 v0, v0, -0x8
|
|
|
|
shr-int/lit8 v0, v0, 0x3
|
|
|
|
.line 709
|
|
new-array v0, v0, [J
|
|
|
|
const-wide v2, -0x7f7f7f7f7f7f7f80L # -2.937446524422997E-306
|
|
|
|
const/4 v4, 0x0
|
|
|
|
const/4 v5, 0x0
|
|
|
|
const/4 v6, 0x6
|
|
|
|
const/4 v7, 0x0
|
|
|
|
move-object v1, v0
|
|
|
|
.line 710
|
|
invoke-static/range {v1 .. v7}, Lkotlin/collections/ArraysKt;->fill$default([JJIIILjava/lang/Object;)V
|
|
|
|
:goto_0
|
|
iput-object v0, p0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
shr-int/lit8 v1, p1, 0x3
|
|
|
|
and-int/lit8 p1, p1, 0x7
|
|
|
|
shl-int/lit8 p1, p1, 0x3
|
|
|
|
.line 1676
|
|
aget-wide v2, v0, v1
|
|
|
|
const-wide/16 v4, 0xff
|
|
|
|
shl-long/2addr v4, p1
|
|
|
|
not-long v6, v4
|
|
|
|
and-long/2addr v2, v6
|
|
|
|
or-long/2addr v2, v4
|
|
|
|
aput-wide v2, v0, v1
|
|
|
|
.line 714
|
|
invoke-direct {p0}, Landroidx/collection/MutableLongObjectMap;->initializeGrowth()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method private final initializeStorage(I)V
|
|
.locals 1
|
|
|
|
if-lez p1, :cond_0
|
|
|
|
const/4 v0, 0x7
|
|
|
|
.line 693
|
|
invoke-static {p1}, Landroidx/collection/ScatterMapKt;->normalizeCapacity(I)I
|
|
|
|
move-result p1
|
|
|
|
invoke-static {v0, p1}, Ljava/lang/Math;->max(II)I
|
|
|
|
move-result p1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
const/4 p1, 0x0
|
|
|
|
:goto_0
|
|
iput p1, p0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
.line 698
|
|
invoke-direct {p0, p1}, Landroidx/collection/MutableLongObjectMap;->initializeMetadata(I)V
|
|
|
|
.line 699
|
|
new-array v0, p1, [J
|
|
|
|
iput-object v0, p0, Landroidx/collection/LongObjectMap;->keys:[J
|
|
|
|
.line 700
|
|
new-array p1, p1, [Ljava/lang/Object;
|
|
|
|
iput-object p1, p0, Landroidx/collection/LongObjectMap;->values:[Ljava/lang/Object;
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method private final removeDeletedMarkers()V
|
|
.locals 14
|
|
|
|
iget-object v0, p0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
iget v1, p0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
const/4 v2, 0x0
|
|
|
|
move v3, v2
|
|
|
|
:goto_0
|
|
if-ge v2, v1, :cond_1
|
|
|
|
shr-int/lit8 v4, v2, 0x3
|
|
|
|
.line 1661
|
|
aget-wide v5, v0, v4
|
|
|
|
and-int/lit8 v7, v2, 0x7
|
|
|
|
shl-int/lit8 v7, v7, 0x3
|
|
|
|
shr-long/2addr v5, v7
|
|
|
|
const-wide/16 v8, 0xff
|
|
|
|
and-long/2addr v5, v8
|
|
|
|
const-wide/16 v10, 0xfe
|
|
|
|
cmp-long v5, v5, v10
|
|
|
|
if-nez v5, :cond_0
|
|
|
|
iget-object v5, p0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
.line 1676
|
|
aget-wide v10, v5, v4
|
|
|
|
shl-long v12, v8, v7
|
|
|
|
not-long v12, v12
|
|
|
|
and-long/2addr v10, v12
|
|
|
|
const-wide/16 v12, 0x80
|
|
|
|
shl-long v6, v12, v7
|
|
|
|
or-long/2addr v6, v10
|
|
|
|
aput-wide v6, v5, v4
|
|
|
|
iget v4, p0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
add-int/lit8 v6, v2, -0x7
|
|
|
|
and-int/2addr v6, v4
|
|
|
|
and-int/lit8 v4, v4, 0x7
|
|
|
|
add-int/2addr v6, v4
|
|
|
|
shr-int/lit8 v4, v6, 0x3
|
|
|
|
and-int/lit8 v6, v6, 0x7
|
|
|
|
shl-int/lit8 v6, v6, 0x3
|
|
|
|
aget-wide v10, v5, v4
|
|
|
|
shl-long v7, v8, v6
|
|
|
|
not-long v7, v7
|
|
|
|
and-long/2addr v7, v10
|
|
|
|
shl-long v9, v12, v6
|
|
|
|
or-long v6, v7, v9
|
|
|
|
aput-wide v6, v5, v4
|
|
|
|
add-int/lit8 v3, v3, 0x1
|
|
|
|
:cond_0
|
|
add-int/lit8 v2, v2, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_1
|
|
iget v0, p0, Landroidx/collection/MutableLongObjectMap;->growthLimit:I
|
|
|
|
add-int/2addr v0, v3
|
|
|
|
iput v0, p0, Landroidx/collection/MutableLongObjectMap;->growthLimit:I
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method private final resizeStorage(I)V
|
|
.locals 22
|
|
|
|
move-object/from16 v0, p0
|
|
|
|
iget-object v1, v0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
iget-object v2, v0, Landroidx/collection/LongObjectMap;->keys:[J
|
|
|
|
iget-object v3, v0, Landroidx/collection/LongObjectMap;->values:[Ljava/lang/Object;
|
|
|
|
iget v4, v0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
.line 983
|
|
invoke-direct/range {p0 .. p1}, Landroidx/collection/MutableLongObjectMap;->initializeStorage(I)V
|
|
|
|
iget-object v5, v0, Landroidx/collection/LongObjectMap;->keys:[J
|
|
|
|
iget-object v6, v0, Landroidx/collection/LongObjectMap;->values:[Ljava/lang/Object;
|
|
|
|
const/4 v7, 0x0
|
|
|
|
:goto_0
|
|
if-ge v7, v4, :cond_1
|
|
|
|
shr-int/lit8 v8, v7, 0x3
|
|
|
|
.line 1661
|
|
aget-wide v8, v1, v8
|
|
|
|
and-int/lit8 v10, v7, 0x7
|
|
|
|
shl-int/lit8 v10, v10, 0x3
|
|
|
|
shr-long/2addr v8, v10
|
|
|
|
const-wide/16 v10, 0xff
|
|
|
|
and-long/2addr v8, v10
|
|
|
|
const-wide/16 v12, 0x80
|
|
|
|
cmp-long v8, v8, v12
|
|
|
|
if-gez v8, :cond_0
|
|
|
|
.line 990
|
|
aget-wide v8, v2, v7
|
|
|
|
.line 849
|
|
invoke-static {v8, v9}, Ljava/lang/Long;->hashCode(J)I
|
|
|
|
move-result v12
|
|
|
|
const v13, -0x3361d2af # -8.293031E7f
|
|
|
|
mul-int/2addr v12, v13
|
|
|
|
shl-int/lit8 v13, v12, 0x10
|
|
|
|
xor-int/2addr v12, v13
|
|
|
|
ushr-int/lit8 v13, v12, 0x7
|
|
|
|
.line 992
|
|
invoke-direct {v0, v13}, Landroidx/collection/MutableLongObjectMap;->findFirstAvailableSlot(I)I
|
|
|
|
move-result v13
|
|
|
|
and-int/lit8 v12, v12, 0x7f
|
|
|
|
int-to-long v14, v12
|
|
|
|
iget-object v12, v0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
shr-int/lit8 v16, v13, 0x3
|
|
|
|
and-int/lit8 v17, v13, 0x7
|
|
|
|
shl-int/lit8 v17, v17, 0x3
|
|
|
|
.line 1676
|
|
aget-wide v18, v12, v16
|
|
|
|
move-object/from16 v20, v1
|
|
|
|
move-object/from16 v21, v2
|
|
|
|
shl-long v1, v10, v17
|
|
|
|
not-long v1, v1
|
|
|
|
and-long v1, v18, v1
|
|
|
|
shl-long v17, v14, v17
|
|
|
|
or-long v1, v1, v17
|
|
|
|
aput-wide v1, v12, v16
|
|
|
|
iget v1, v0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
add-int/lit8 v2, v13, -0x7
|
|
|
|
and-int/2addr v2, v1
|
|
|
|
and-int/lit8 v1, v1, 0x7
|
|
|
|
add-int/2addr v2, v1
|
|
|
|
shr-int/lit8 v1, v2, 0x3
|
|
|
|
and-int/lit8 v2, v2, 0x7
|
|
|
|
shl-int/lit8 v2, v2, 0x3
|
|
|
|
aget-wide v16, v12, v1
|
|
|
|
shl-long/2addr v10, v2
|
|
|
|
not-long v10, v10
|
|
|
|
and-long v10, v16, v10
|
|
|
|
shl-long/2addr v14, v2
|
|
|
|
or-long/2addr v10, v14
|
|
|
|
aput-wide v10, v12, v1
|
|
|
|
.line 995
|
|
aput-wide v8, v5, v13
|
|
|
|
.line 996
|
|
aget-object v1, v3, v7
|
|
|
|
aput-object v1, v6, v13
|
|
|
|
goto :goto_1
|
|
|
|
:cond_0
|
|
move-object/from16 v20, v1
|
|
|
|
move-object/from16 v21, v2
|
|
|
|
:goto_1
|
|
add-int/lit8 v7, v7, 0x1
|
|
|
|
move-object/from16 v1, v20
|
|
|
|
move-object/from16 v2, v21
|
|
|
|
goto :goto_0
|
|
|
|
:cond_1
|
|
return-void
|
|
.end method
|
|
|
|
.method private final writeMetadata(IJ)V
|
|
.locals 9
|
|
|
|
iget-object v0, p0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
shr-int/lit8 v1, p1, 0x3
|
|
|
|
and-int/lit8 v2, p1, 0x7
|
|
|
|
shl-int/lit8 v2, v2, 0x3
|
|
|
|
.line 1676
|
|
aget-wide v3, v0, v1
|
|
|
|
const-wide/16 v5, 0xff
|
|
|
|
shl-long v7, v5, v2
|
|
|
|
not-long v7, v7
|
|
|
|
and-long/2addr v3, v7
|
|
|
|
shl-long v7, p2, v2
|
|
|
|
or-long v2, v3, v7
|
|
|
|
aput-wide v2, v0, v1
|
|
|
|
iget v1, p0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
add-int/lit8 p1, p1, -0x7
|
|
|
|
and-int/2addr p1, v1
|
|
|
|
and-int/lit8 v1, v1, 0x7
|
|
|
|
add-int/2addr p1, v1
|
|
|
|
shr-int/lit8 v1, p1, 0x3
|
|
|
|
and-int/lit8 p1, p1, 0x7
|
|
|
|
shl-int/lit8 p1, p1, 0x3
|
|
|
|
.line 1676
|
|
aget-wide v2, v0, v1
|
|
|
|
shl-long v4, v5, p1
|
|
|
|
not-long v4, v4
|
|
|
|
and-long/2addr v2, v4
|
|
|
|
shl-long p1, p2, p1
|
|
|
|
or-long/2addr p1, v2
|
|
|
|
aput-wide p1, v0, v1
|
|
|
|
return-void
|
|
.end method
|
|
|
|
|
|
# virtual methods
|
|
.method public final clear()V
|
|
.locals 10
|
|
|
|
const/4 v0, 0x0
|
|
|
|
iput v0, p0, Landroidx/collection/LongObjectMap;->_size:I
|
|
|
|
iget-object v1, p0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
.line 869
|
|
sget-object v2, Landroidx/collection/ScatterMapKt;->EmptyGroup:[J
|
|
|
|
if-eq v1, v2, :cond_0
|
|
|
|
const-wide v2, -0x7f7f7f7f7f7f7f80L # -2.937446524422997E-306
|
|
|
|
const/4 v4, 0x0
|
|
|
|
const/4 v5, 0x0
|
|
|
|
const/4 v6, 0x6
|
|
|
|
const/4 v7, 0x0
|
|
|
|
.line 870
|
|
invoke-static/range {v1 .. v7}, Lkotlin/collections/ArraysKt;->fill$default([JJIIILjava/lang/Object;)V
|
|
|
|
iget-object v1, p0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
iget v2, p0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
shr-int/lit8 v3, v2, 0x3
|
|
|
|
and-int/lit8 v2, v2, 0x7
|
|
|
|
shl-int/lit8 v2, v2, 0x3
|
|
|
|
.line 1676
|
|
aget-wide v4, v1, v3
|
|
|
|
const-wide/16 v6, 0xff
|
|
|
|
shl-long/2addr v6, v2
|
|
|
|
not-long v8, v6
|
|
|
|
and-long/2addr v4, v8
|
|
|
|
or-long/2addr v4, v6
|
|
|
|
aput-wide v4, v1, v3
|
|
|
|
:cond_0
|
|
iget-object v1, p0, Landroidx/collection/LongObjectMap;->values:[Ljava/lang/Object;
|
|
|
|
const/4 v2, 0x0
|
|
|
|
iget v3, p0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
.line 873
|
|
invoke-static {v1, v2, v0, v3}, Lkotlin/collections/ArraysKt;->fill([Ljava/lang/Object;Ljava/lang/Object;II)V
|
|
|
|
.line 874
|
|
invoke-direct {p0}, Landroidx/collection/MutableLongObjectMap;->initializeGrowth()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public final getOrPut(JLkotlin/jvm/functions/Function0;)Ljava/lang/Object;
|
|
.locals 1
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(J",
|
|
"Lkotlin/jvm/functions/Function0;",
|
|
")TV;"
|
|
}
|
|
.end annotation
|
|
|
|
const-string v0, "defaultValue"
|
|
|
|
invoke-static {p3, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
|
|
|
|
.line 728
|
|
invoke-virtual {p0, p1, p2}, Landroidx/collection/LongObjectMap;->get(J)Ljava/lang/Object;
|
|
|
|
move-result-object v0
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
invoke-interface {p3}, Lkotlin/jvm/functions/Function0;->invoke()Ljava/lang/Object;
|
|
|
|
move-result-object v0
|
|
|
|
invoke-virtual {p0, p1, p2, v0}, Landroidx/collection/MutableLongObjectMap;->set(JLjava/lang/Object;)V
|
|
|
|
:cond_0
|
|
return-object v0
|
|
.end method
|
|
|
|
.method public final minusAssign(J)V
|
|
.locals 0
|
|
|
|
.line 820
|
|
invoke-virtual {p0, p1, p2}, Landroidx/collection/MutableLongObjectMap;->remove(J)Ljava/lang/Object;
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public final minusAssign(Landroidx/collection/LongList;)V
|
|
.locals 4
|
|
|
|
const-string v0, "keys"
|
|
|
|
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
|
|
|
|
.line 254
|
|
iget-object v0, p1, Landroidx/collection/LongList;->content:[J
|
|
|
|
.line 255
|
|
iget p1, p1, Landroidx/collection/LongList;->_size:I
|
|
|
|
const/4 v1, 0x0
|
|
|
|
:goto_0
|
|
if-ge v1, p1, :cond_0
|
|
|
|
.line 256
|
|
aget-wide v2, v0, v1
|
|
|
|
.line 820
|
|
invoke-virtual {p0, v2, v3}, Landroidx/collection/MutableLongObjectMap;->remove(J)Ljava/lang/Object;
|
|
|
|
add-int/lit8 v1, v1, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
return-void
|
|
.end method
|
|
|
|
.method public final minusAssign(Landroidx/collection/LongSet;)V
|
|
.locals 13
|
|
|
|
const-string v0, "keys"
|
|
|
|
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
|
|
|
|
.line 263
|
|
iget-object v0, p1, Landroidx/collection/LongSet;->elements:[J
|
|
|
|
.line 233
|
|
iget-object p1, p1, Landroidx/collection/LongSet;->metadata:[J
|
|
|
|
.line 234
|
|
array-length v1, p1
|
|
|
|
add-int/lit8 v1, v1, -0x2
|
|
|
|
if-ltz v1, :cond_3
|
|
|
|
const/4 v2, 0x0
|
|
|
|
move v3, v2
|
|
|
|
.line 237
|
|
:goto_0
|
|
aget-wide v4, p1, v3
|
|
|
|
not-long v6, v4
|
|
|
|
const/4 v8, 0x7
|
|
|
|
shl-long/2addr v6, v8
|
|
|
|
and-long/2addr v6, v4
|
|
|
|
const-wide v8, -0x7f7f7f7f7f7f7f80L # -2.937446524422997E-306
|
|
|
|
and-long/2addr v6, v8
|
|
|
|
cmp-long v6, v6, v8
|
|
|
|
if-eqz v6, :cond_2
|
|
|
|
sub-int v6, v3, v1
|
|
|
|
not-int v6, v6
|
|
|
|
ushr-int/lit8 v6, v6, 0x1f
|
|
|
|
const/16 v7, 0x8
|
|
|
|
rsub-int/lit8 v6, v6, 0x8
|
|
|
|
move v8, v2
|
|
|
|
:goto_1
|
|
if-ge v8, v6, :cond_1
|
|
|
|
const-wide/16 v9, 0xff
|
|
|
|
and-long/2addr v9, v4
|
|
|
|
const-wide/16 v11, 0x80
|
|
|
|
cmp-long v9, v9, v11
|
|
|
|
if-gez v9, :cond_0
|
|
|
|
shl-int/lit8 v9, v3, 0x3
|
|
|
|
add-int/2addr v9, v8
|
|
|
|
.line 266
|
|
aget-wide v9, v0, v9
|
|
|
|
.line 820
|
|
invoke-virtual {p0, v9, v10}, Landroidx/collection/MutableLongObjectMap;->remove(J)Ljava/lang/Object;
|
|
|
|
:cond_0
|
|
shr-long/2addr v4, v7
|
|
|
|
add-int/lit8 v8, v8, 0x1
|
|
|
|
goto :goto_1
|
|
|
|
:cond_1
|
|
if-ne v6, v7, :cond_3
|
|
|
|
:cond_2
|
|
if-eq v3, v1, :cond_3
|
|
|
|
add-int/lit8 v3, v3, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_3
|
|
return-void
|
|
.end method
|
|
|
|
.method public final minusAssign([J)V
|
|
.locals 4
|
|
|
|
const-string v0, "keys"
|
|
|
|
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
|
|
|
|
.line 827
|
|
array-length v0, p1
|
|
|
|
const/4 v1, 0x0
|
|
|
|
:goto_0
|
|
if-ge v1, v0, :cond_0
|
|
|
|
aget-wide v2, p1, v1
|
|
|
|
.line 828
|
|
invoke-virtual {p0, v2, v3}, Landroidx/collection/MutableLongObjectMap;->remove(J)Ljava/lang/Object;
|
|
|
|
add-int/lit8 v1, v1, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
return-void
|
|
.end method
|
|
|
|
.method public final plusAssign(Landroidx/collection/LongObjectMap;)V
|
|
.locals 1
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(",
|
|
"Landroidx/collection/LongObjectMap<",
|
|
"TV;>;)V"
|
|
}
|
|
.end annotation
|
|
|
|
const-string v0, "from"
|
|
|
|
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
|
|
|
|
.line 774
|
|
invoke-virtual {p0, p1}, Landroidx/collection/MutableLongObjectMap;->putAll(Landroidx/collection/LongObjectMap;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public final put(JLjava/lang/Object;)Ljava/lang/Object;
|
|
.locals 4
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(JTV;)TV;"
|
|
}
|
|
.end annotation
|
|
|
|
.line 753
|
|
invoke-direct {p0, p1, p2}, Landroidx/collection/MutableLongObjectMap;->findAbsoluteInsertIndex(J)I
|
|
|
|
move-result v0
|
|
|
|
iget-object v1, p0, Landroidx/collection/LongObjectMap;->values:[Ljava/lang/Object;
|
|
|
|
.line 754
|
|
aget-object v2, v1, v0
|
|
|
|
iget-object v3, p0, Landroidx/collection/LongObjectMap;->keys:[J
|
|
|
|
.line 755
|
|
aput-wide p1, v3, v0
|
|
|
|
.line 756
|
|
aput-object p3, v1, v0
|
|
|
|
return-object v2
|
|
.end method
|
|
|
|
.method public final putAll(Landroidx/collection/LongObjectMap;)V
|
|
.locals 14
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(",
|
|
"Landroidx/collection/LongObjectMap<",
|
|
"TV;>;)V"
|
|
}
|
|
.end annotation
|
|
|
|
const-string v0, "from"
|
|
|
|
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
|
|
|
|
.line 382
|
|
iget-object v0, p1, Landroidx/collection/LongObjectMap;->keys:[J
|
|
|
|
.line 383
|
|
iget-object v1, p1, Landroidx/collection/LongObjectMap;->values:[Ljava/lang/Object;
|
|
|
|
.line 354
|
|
iget-object p1, p1, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
.line 355
|
|
array-length v2, p1
|
|
|
|
add-int/lit8 v2, v2, -0x2
|
|
|
|
if-ltz v2, :cond_3
|
|
|
|
const/4 v3, 0x0
|
|
|
|
move v4, v3
|
|
|
|
.line 358
|
|
:goto_0
|
|
aget-wide v5, p1, v4
|
|
|
|
not-long v7, v5
|
|
|
|
const/4 v9, 0x7
|
|
|
|
shl-long/2addr v7, v9
|
|
|
|
and-long/2addr v7, v5
|
|
|
|
const-wide v9, -0x7f7f7f7f7f7f7f80L # -2.937446524422997E-306
|
|
|
|
and-long/2addr v7, v9
|
|
|
|
cmp-long v7, v7, v9
|
|
|
|
if-eqz v7, :cond_2
|
|
|
|
sub-int v7, v4, v2
|
|
|
|
not-int v7, v7
|
|
|
|
ushr-int/lit8 v7, v7, 0x1f
|
|
|
|
const/16 v8, 0x8
|
|
|
|
rsub-int/lit8 v7, v7, 0x8
|
|
|
|
move v9, v3
|
|
|
|
:goto_1
|
|
if-ge v9, v7, :cond_1
|
|
|
|
const-wide/16 v10, 0xff
|
|
|
|
and-long/2addr v10, v5
|
|
|
|
const-wide/16 v12, 0x80
|
|
|
|
cmp-long v10, v10, v12
|
|
|
|
if-gez v10, :cond_0
|
|
|
|
shl-int/lit8 v10, v4, 0x3
|
|
|
|
add-int/2addr v10, v9
|
|
|
|
.line 387
|
|
aget-wide v11, v0, v10
|
|
|
|
aget-object v10, v1, v10
|
|
|
|
.line 767
|
|
invoke-virtual {p0, v11, v12, v10}, Landroidx/collection/MutableLongObjectMap;->set(JLjava/lang/Object;)V
|
|
|
|
:cond_0
|
|
shr-long/2addr v5, v8
|
|
|
|
add-int/lit8 v9, v9, 0x1
|
|
|
|
goto :goto_1
|
|
|
|
:cond_1
|
|
if-ne v7, v8, :cond_3
|
|
|
|
:cond_2
|
|
if-eq v4, v2, :cond_3
|
|
|
|
add-int/lit8 v4, v4, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_3
|
|
return-void
|
|
.end method
|
|
|
|
.method public final remove(J)Ljava/lang/Object;
|
|
.locals 15
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(J)TV;"
|
|
}
|
|
.end annotation
|
|
|
|
move-object v0, p0
|
|
|
|
.line 849
|
|
invoke-static/range {p1 .. p2}, Ljava/lang/Long;->hashCode(J)I
|
|
|
|
move-result v1
|
|
|
|
const v2, -0x3361d2af # -8.293031E7f
|
|
|
|
mul-int/2addr v1, v2
|
|
|
|
shl-int/lit8 v2, v1, 0x10
|
|
|
|
xor-int/2addr v1, v2
|
|
|
|
and-int/lit8 v2, v1, 0x7f
|
|
|
|
iget v3, v0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
ushr-int/lit8 v1, v1, 0x7
|
|
|
|
and-int/2addr v1, v3
|
|
|
|
const/4 v4, 0x0
|
|
|
|
:goto_0
|
|
iget-object v5, v0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
shr-int/lit8 v6, v1, 0x3
|
|
|
|
and-int/lit8 v7, v1, 0x7
|
|
|
|
shl-int/lit8 v7, v7, 0x3
|
|
|
|
.line 1797
|
|
aget-wide v8, v5, v6
|
|
|
|
ushr-long/2addr v8, v7
|
|
|
|
add-int/lit8 v6, v6, 0x1
|
|
|
|
aget-wide v10, v5, v6
|
|
|
|
rsub-int/lit8 v5, v7, 0x40
|
|
|
|
shl-long v5, v10, v5
|
|
|
|
int-to-long v10, v7
|
|
|
|
neg-long v10, v10
|
|
|
|
const/16 v7, 0x3f
|
|
|
|
shr-long/2addr v10, v7
|
|
|
|
and-long/2addr v5, v10
|
|
|
|
or-long/2addr v5, v8
|
|
|
|
int-to-long v7, v2
|
|
|
|
const-wide v9, 0x101010101010101L
|
|
|
|
mul-long/2addr v7, v9
|
|
|
|
xor-long/2addr v7, v5
|
|
|
|
sub-long v9, v7, v9
|
|
|
|
not-long v7, v7
|
|
|
|
and-long/2addr v7, v9
|
|
|
|
const-wide v9, -0x7f7f7f7f7f7f7f80L # -2.937446524422997E-306
|
|
|
|
and-long/2addr v7, v9
|
|
|
|
:goto_1
|
|
const-wide/16 v11, 0x0
|
|
|
|
cmp-long v13, v7, v11
|
|
|
|
if-eqz v13, :cond_1
|
|
|
|
.line 1715
|
|
invoke-static {v7, v8}, Ljava/lang/Long;->numberOfTrailingZeros(J)I
|
|
|
|
move-result v11
|
|
|
|
shr-int/lit8 v11, v11, 0x3
|
|
|
|
add-int/2addr v11, v1
|
|
|
|
and-int/2addr v11, v3
|
|
|
|
iget-object v12, v0, Landroidx/collection/LongObjectMap;->keys:[J
|
|
|
|
.line 631
|
|
aget-wide v13, v12, v11
|
|
|
|
cmp-long v12, v13, p1
|
|
|
|
if-nez v12, :cond_0
|
|
|
|
goto :goto_2
|
|
|
|
:cond_0
|
|
const-wide/16 v11, 0x1
|
|
|
|
sub-long v11, v7, v11
|
|
|
|
and-long/2addr v7, v11
|
|
|
|
goto :goto_1
|
|
|
|
:cond_1
|
|
not-long v7, v5
|
|
|
|
const/4 v13, 0x6
|
|
|
|
shl-long/2addr v7, v13
|
|
|
|
and-long/2addr v5, v7
|
|
|
|
and-long/2addr v5, v9
|
|
|
|
cmp-long v5, v5, v11
|
|
|
|
if-eqz v5, :cond_3
|
|
|
|
const/4 v11, -0x1
|
|
|
|
:goto_2
|
|
if-ltz v11, :cond_2
|
|
|
|
.line 784
|
|
invoke-virtual {p0, v11}, Landroidx/collection/MutableLongObjectMap;->removeValueAt(I)Ljava/lang/Object;
|
|
|
|
move-result-object v1
|
|
|
|
return-object v1
|
|
|
|
:cond_2
|
|
const/4 v1, 0x0
|
|
|
|
return-object v1
|
|
|
|
:cond_3
|
|
add-int/lit8 v4, v4, 0x8
|
|
|
|
add-int/2addr v1, v4
|
|
|
|
and-int/2addr v1, v3
|
|
|
|
goto :goto_0
|
|
.end method
|
|
|
|
.method public final remove(JLjava/lang/Object;)Z
|
|
.locals 17
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(JTV;)Z"
|
|
}
|
|
.end annotation
|
|
|
|
move-object/from16 v0, p0
|
|
|
|
.line 849
|
|
invoke-static/range {p1 .. p2}, Ljava/lang/Long;->hashCode(J)I
|
|
|
|
move-result v1
|
|
|
|
const v2, -0x3361d2af # -8.293031E7f
|
|
|
|
mul-int/2addr v1, v2
|
|
|
|
shl-int/lit8 v2, v1, 0x10
|
|
|
|
xor-int/2addr v1, v2
|
|
|
|
and-int/lit8 v2, v1, 0x7f
|
|
|
|
iget v3, v0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
ushr-int/lit8 v1, v1, 0x7
|
|
|
|
and-int/2addr v1, v3
|
|
|
|
const/4 v4, 0x0
|
|
|
|
move v5, v4
|
|
|
|
:goto_0
|
|
iget-object v6, v0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
shr-int/lit8 v7, v1, 0x3
|
|
|
|
and-int/lit8 v8, v1, 0x7
|
|
|
|
shl-int/lit8 v8, v8, 0x3
|
|
|
|
.line 1797
|
|
aget-wide v9, v6, v7
|
|
|
|
ushr-long/2addr v9, v8
|
|
|
|
const/4 v11, 0x1
|
|
|
|
add-int/2addr v7, v11
|
|
|
|
aget-wide v12, v6, v7
|
|
|
|
rsub-int/lit8 v6, v8, 0x40
|
|
|
|
shl-long v6, v12, v6
|
|
|
|
int-to-long v12, v8
|
|
|
|
neg-long v12, v12
|
|
|
|
const/16 v8, 0x3f
|
|
|
|
shr-long/2addr v12, v8
|
|
|
|
and-long/2addr v6, v12
|
|
|
|
or-long/2addr v6, v9
|
|
|
|
int-to-long v8, v2
|
|
|
|
const-wide v12, 0x101010101010101L
|
|
|
|
mul-long/2addr v8, v12
|
|
|
|
xor-long/2addr v8, v6
|
|
|
|
sub-long v12, v8, v12
|
|
|
|
not-long v8, v8
|
|
|
|
and-long/2addr v8, v12
|
|
|
|
const-wide v12, -0x7f7f7f7f7f7f7f80L # -2.937446524422997E-306
|
|
|
|
and-long/2addr v8, v12
|
|
|
|
:goto_1
|
|
const-wide/16 v14, 0x0
|
|
|
|
cmp-long v10, v8, v14
|
|
|
|
if-eqz v10, :cond_1
|
|
|
|
.line 1715
|
|
invoke-static {v8, v9}, Ljava/lang/Long;->numberOfTrailingZeros(J)I
|
|
|
|
move-result v10
|
|
|
|
shr-int/lit8 v10, v10, 0x3
|
|
|
|
add-int/2addr v10, v1
|
|
|
|
and-int/2addr v10, v3
|
|
|
|
iget-object v14, v0, Landroidx/collection/LongObjectMap;->keys:[J
|
|
|
|
.line 631
|
|
aget-wide v15, v14, v10
|
|
|
|
cmp-long v14, v15, p1
|
|
|
|
if-nez v14, :cond_0
|
|
|
|
goto :goto_2
|
|
|
|
:cond_0
|
|
const-wide/16 v14, 0x1
|
|
|
|
sub-long v14, v8, v14
|
|
|
|
and-long/2addr v8, v14
|
|
|
|
goto :goto_1
|
|
|
|
:cond_1
|
|
not-long v8, v6
|
|
|
|
const/4 v10, 0x6
|
|
|
|
shl-long/2addr v8, v10
|
|
|
|
and-long/2addr v6, v8
|
|
|
|
and-long/2addr v6, v12
|
|
|
|
cmp-long v6, v6, v14
|
|
|
|
if-eqz v6, :cond_3
|
|
|
|
const/4 v10, -0x1
|
|
|
|
:goto_2
|
|
if-ltz v10, :cond_2
|
|
|
|
iget-object v1, v0, Landroidx/collection/LongObjectMap;->values:[Ljava/lang/Object;
|
|
|
|
.line 796
|
|
aget-object v1, v1, v10
|
|
|
|
move-object/from16 v6, p3
|
|
|
|
invoke-static {v1, v6}, Lkotlin/jvm/internal/Intrinsics;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
|
|
|
|
move-result v1
|
|
|
|
if-eqz v1, :cond_2
|
|
|
|
.line 797
|
|
invoke-virtual {v0, v10}, Landroidx/collection/MutableLongObjectMap;->removeValueAt(I)Ljava/lang/Object;
|
|
|
|
return v11
|
|
|
|
:cond_2
|
|
return v4
|
|
|
|
:cond_3
|
|
move-object/from16 v6, p3
|
|
|
|
add-int/lit8 v5, v5, 0x8
|
|
|
|
add-int/2addr v1, v5
|
|
|
|
and-int/2addr v1, v3
|
|
|
|
goto :goto_0
|
|
.end method
|
|
|
|
.method public final removeIf(Lkotlin/jvm/functions/Function2;)V
|
|
.locals 13
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(",
|
|
"Lkotlin/jvm/functions/Function2;",
|
|
")V"
|
|
}
|
|
.end annotation
|
|
|
|
const-string v0, "predicate"
|
|
|
|
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
|
|
|
|
iget-object v0, p0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
.line 355
|
|
array-length v1, v0
|
|
|
|
add-int/lit8 v1, v1, -0x2
|
|
|
|
if-ltz v1, :cond_3
|
|
|
|
const/4 v2, 0x0
|
|
|
|
move v3, v2
|
|
|
|
.line 358
|
|
:goto_0
|
|
aget-wide v4, v0, v3
|
|
|
|
not-long v6, v4
|
|
|
|
const/4 v8, 0x7
|
|
|
|
shl-long/2addr v6, v8
|
|
|
|
and-long/2addr v6, v4
|
|
|
|
const-wide v8, -0x7f7f7f7f7f7f7f80L # -2.937446524422997E-306
|
|
|
|
and-long/2addr v6, v8
|
|
|
|
cmp-long v6, v6, v8
|
|
|
|
if-eqz v6, :cond_2
|
|
|
|
sub-int v6, v3, v1
|
|
|
|
not-int v6, v6
|
|
|
|
ushr-int/lit8 v6, v6, 0x1f
|
|
|
|
const/16 v7, 0x8
|
|
|
|
rsub-int/lit8 v6, v6, 0x8
|
|
|
|
move v8, v2
|
|
|
|
:goto_1
|
|
if-ge v8, v6, :cond_1
|
|
|
|
const-wide/16 v9, 0xff
|
|
|
|
and-long/2addr v9, v4
|
|
|
|
const-wide/16 v11, 0x80
|
|
|
|
cmp-long v9, v9, v11
|
|
|
|
if-gez v9, :cond_0
|
|
|
|
shl-int/lit8 v9, v3, 0x3
|
|
|
|
add-int/2addr v9, v8
|
|
|
|
iget-object v10, p0, Landroidx/collection/LongObjectMap;->keys:[J
|
|
|
|
.line 810
|
|
aget-wide v11, v10, v9
|
|
|
|
invoke-static {v11, v12}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
|
|
|
|
move-result-object v10
|
|
|
|
iget-object v11, p0, Landroidx/collection/LongObjectMap;->values:[Ljava/lang/Object;
|
|
|
|
aget-object v11, v11, v9
|
|
|
|
invoke-interface {p1, v10, v11}, Lkotlin/jvm/functions/Function2;->invoke(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
move-result-object v10
|
|
|
|
check-cast v10, Ljava/lang/Boolean;
|
|
|
|
invoke-virtual {v10}, Ljava/lang/Boolean;->booleanValue()Z
|
|
|
|
move-result v10
|
|
|
|
if-eqz v10, :cond_0
|
|
|
|
.line 811
|
|
invoke-virtual {p0, v9}, Landroidx/collection/MutableLongObjectMap;->removeValueAt(I)Ljava/lang/Object;
|
|
|
|
:cond_0
|
|
shr-long/2addr v4, v7
|
|
|
|
add-int/lit8 v8, v8, 0x1
|
|
|
|
goto :goto_1
|
|
|
|
:cond_1
|
|
if-ne v6, v7, :cond_3
|
|
|
|
:cond_2
|
|
if-eq v3, v1, :cond_3
|
|
|
|
add-int/lit8 v3, v3, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_3
|
|
return-void
|
|
.end method
|
|
|
|
.method public final removeValueAt(I)Ljava/lang/Object;
|
|
.locals 11
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(I)TV;"
|
|
}
|
|
.end annotation
|
|
|
|
iget v0, p0, Landroidx/collection/LongObjectMap;->_size:I
|
|
|
|
add-int/lit8 v0, v0, -0x1
|
|
|
|
iput v0, p0, Landroidx/collection/LongObjectMap;->_size:I
|
|
|
|
iget-object v0, p0, Landroidx/collection/LongObjectMap;->metadata:[J
|
|
|
|
shr-int/lit8 v1, p1, 0x3
|
|
|
|
and-int/lit8 v2, p1, 0x7
|
|
|
|
shl-int/lit8 v2, v2, 0x3
|
|
|
|
.line 1676
|
|
aget-wide v3, v0, v1
|
|
|
|
const-wide/16 v5, 0xff
|
|
|
|
shl-long v7, v5, v2
|
|
|
|
not-long v7, v7
|
|
|
|
and-long/2addr v3, v7
|
|
|
|
const-wide/16 v7, 0xfe
|
|
|
|
shl-long v9, v7, v2
|
|
|
|
or-long v2, v3, v9
|
|
|
|
aput-wide v2, v0, v1
|
|
|
|
iget v1, p0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
add-int/lit8 v2, p1, -0x7
|
|
|
|
and-int/2addr v2, v1
|
|
|
|
and-int/lit8 v1, v1, 0x7
|
|
|
|
add-int/2addr v2, v1
|
|
|
|
shr-int/lit8 v1, v2, 0x3
|
|
|
|
and-int/lit8 v2, v2, 0x7
|
|
|
|
shl-int/lit8 v2, v2, 0x3
|
|
|
|
aget-wide v3, v0, v1
|
|
|
|
shl-long/2addr v5, v2
|
|
|
|
not-long v5, v5
|
|
|
|
and-long/2addr v3, v5
|
|
|
|
shl-long v5, v7, v2
|
|
|
|
or-long v2, v3, v5
|
|
|
|
aput-wide v2, v0, v1
|
|
|
|
iget-object v0, p0, Landroidx/collection/LongObjectMap;->values:[Ljava/lang/Object;
|
|
|
|
.line 857
|
|
aget-object v1, v0, p1
|
|
|
|
const/4 v2, 0x0
|
|
|
|
.line 858
|
|
aput-object v2, v0, p1
|
|
|
|
return-object v1
|
|
.end method
|
|
|
|
.method public final set(JLjava/lang/Object;)V
|
|
.locals 2
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(JTV;)V"
|
|
}
|
|
.end annotation
|
|
|
|
.line 739
|
|
invoke-direct {p0, p1, p2}, Landroidx/collection/MutableLongObjectMap;->findAbsoluteInsertIndex(J)I
|
|
|
|
move-result v0
|
|
|
|
iget-object v1, p0, Landroidx/collection/LongObjectMap;->keys:[J
|
|
|
|
.line 740
|
|
aput-wide p1, v1, v0
|
|
|
|
iget-object p1, p0, Landroidx/collection/LongObjectMap;->values:[Ljava/lang/Object;
|
|
|
|
.line 741
|
|
aput-object p3, p1, v0
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public final trim()I
|
|
.locals 2
|
|
|
|
iget v0, p0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
iget v1, p0, Landroidx/collection/LongObjectMap;->_size:I
|
|
|
|
.line 954
|
|
invoke-static {v1}, Landroidx/collection/ScatterMapKt;->unloadedCapacity(I)I
|
|
|
|
move-result v1
|
|
|
|
invoke-static {v1}, Landroidx/collection/ScatterMapKt;->normalizeCapacity(I)I
|
|
|
|
move-result v1
|
|
|
|
if-ge v1, v0, :cond_0
|
|
|
|
.line 956
|
|
invoke-direct {p0, v1}, Landroidx/collection/MutableLongObjectMap;->resizeStorage(I)V
|
|
|
|
iget v1, p0, Landroidx/collection/LongObjectMap;->_capacity:I
|
|
|
|
sub-int/2addr v0, v1
|
|
|
|
return v0
|
|
|
|
:cond_0
|
|
const/4 v0, 0x0
|
|
|
|
return v0
|
|
.end method
|