a.smali
.class public final Lrx/internal/operators/a;
.super Ljava/lang/Object;
.source "BackpressureUtils.java"
# direct methods
.method public static b(Ljava/util/concurrent/atomic/AtomicLong;J)J
.registers 12
.prologue
const-wide v0, 0x7fffffffffffffffL
.line 376
:cond_5
invoke-virtual {p0}, Ljava/util/concurrent/atomic/AtomicLong;->get()J
move-result-wide v4
.line 377
cmp-long v2, v4, v0
if-nez v2, :cond_e
.line 385
:goto_d
return-wide v0
.line 380
:cond_e
sub-long v2, v4, p1
.line 381
const-wide/16 v6, 0x0
cmp-long v6, v2, v6
if-gez v6, :cond_2b
.line 382
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v4, "More produced than requested: "
invoke-direct {v1, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 384
:cond_2b
invoke-virtual {p0, v4, v5, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;->compareAndSet(JJ)Z
move-result v4
if-eqz v4, :cond_5
move-wide v0, v2
.line 385
goto :goto_d
.end method
.method public static c(Ljava/util/concurrent/atomic/AtomicLong;J)J
.registers 10
.prologue
.line 58
:cond_0
invoke-virtual {p0}, Ljava/util/concurrent/atomic/AtomicLong;->get()J
move-result-wide v2
.line 1089
add-long v0, v2, p1
.line 1090
const-wide/16 v4, 0x0
cmp-long v4, v0, v4
if-gez v4, :cond_11
.line 1091
const-wide v0, 0x7fffffffffffffffL
.line 60
:cond_11
invoke-virtual {p0, v2, v3, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;->compareAndSet(JJ)Z
move-result v0
if-eqz v0, :cond_0
.line 61
return-wide v2
.end method