| | | |
Offset 22, 29 lines modified | Offset 22, 29 lines modified |
22 | ····const-class·v0,·Ljava/util/concurrent/locks/LockSupport; | 22 | ····const-class·v0,·Ljava/util/concurrent/locks/LockSupport; |
| |
23 | ····.line·2 | 23 | ····.line·2 |
24 | ····new-instance·v0,·Lcom/google/common/util/concurrent/InterruptibleTask$DoNothingRunnable; | 24 | ····new-instance·v0,·Lcom/google/common/util/concurrent/InterruptibleTask$DoNothingRunnable; |
| |
25 | ····const/4·v1,·0x0 | 25 | ····const/4·v1,·0x0 |
| |
26 | ····invoke-direct·{v0,·v1},·Lcom/google/common/util/concurrent/InterruptibleTask$DoNothingRunnable;-><init>(Lcom/google/common/util/concurrent/Uninterruptibles;)V | 26 | ····invoke-direct·{v0,·v1},·Lcom/google/common/util/concurrent/InterruptibleTask$DoNothingRunnable;-><init>(Lcom/google/common/util/concurrent/Futures;)V |
| |
27 | ····sput-object·v0,·Lcom/google/common/util/concurrent/InterruptibleTask;->DONE:Ljava/lang/Runnable; | 27 | ····sput-object·v0,·Lcom/google/common/util/concurrent/InterruptibleTask;->DONE:Ljava/lang/Runnable; |
| |
28 | ····.line·3 | 28 | ····.line·3 |
29 | ····new-instance·v0,·Lcom/google/common/util/concurrent/InterruptibleTask$DoNothingRunnable; | 29 | ····new-instance·v0,·Lcom/google/common/util/concurrent/InterruptibleTask$DoNothingRunnable; |
| |
30 | ····invoke-direct·{v0,·v1},·Lcom/google/common/util/concurrent/InterruptibleTask$DoNothingRunnable;-><init>(Lcom/google/common/util/concurrent/Uninterruptibles;)V | 30 | ····invoke-direct·{v0,·v1},·Lcom/google/common/util/concurrent/InterruptibleTask$DoNothingRunnable;-><init>(Lcom/google/common/util/concurrent/Futures;)V |
| |
31 | ····sput-object·v0,·Lcom/google/common/util/concurrent/InterruptibleTask;->INTERRUPTING:Ljava/lang/Runnable; | 31 | ····sput-object·v0,·Lcom/google/common/util/concurrent/InterruptibleTask;->INTERRUPTING:Ljava/lang/Runnable; |
| |
32 | ····.line·4 | 32 | ····.line·4 |
33 | ····new-instance·v0,·Lcom/google/common/util/concurrent/InterruptibleTask$DoNothingRunnable; | 33 | ····new-instance·v0,·Lcom/google/common/util/concurrent/InterruptibleTask$DoNothingRunnable; |
| |
34 | ····invoke-direct·{v0,·v1},·Lcom/google/common/util/concurrent/InterruptibleTask$DoNothingRunnable;-><init>(Lcom/google/common/util/concurrent/Uninterruptibles;)V | 34 | ····invoke-direct·{v0,·v1},·Lcom/google/common/util/concurrent/InterruptibleTask$DoNothingRunnable;-><init>(Lcom/google/common/util/concurrent/Futures;)V |
| |
35 | ····sput-object·v0,·Lcom/google/common/util/concurrent/InterruptibleTask;->PARKED:Ljava/lang/Runnable; | 35 | ····sput-object·v0,·Lcom/google/common/util/concurrent/InterruptibleTask;->PARKED:Ljava/lang/Runnable; |
| |
36 | ····return-void | 36 | ····return-void |
37 | .end·method | 37 | .end·method |
| |
38 | .method·constructor·<init>()V | 38 | .method·constructor·<init>()V |
Offset 142, 17 lines modified | Offset 142, 14 lines modified |
142 | ····throw·v1 | 142 | ····throw·v1 |
| |
143 | ····:cond_1 | 143 | ····:cond_1 |
144 | ····:goto_0 | 144 | ····:goto_0 |
145 | ····return-void | 145 | ····return-void |
146 | .end·method | 146 | .end·method |
| |
147 | .method·abstract·isDone()Z | |
148 | .end·method | |
| |
149 | .method·public·final·run()V | 147 | .method·public·final·run()V |
150 | ····.locals·12 | 148 | ····.locals·12 |
| |
151 | ····.line·1 | 149 | ····.line·1 |
152 | ····invoke-static·{},·Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; | 150 | ····invoke-static·{},·Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; |
| |
153 | ····move-result-object·v0 | 151 | ····move-result-object·v0 |
Offset 166, 99 lines modified | Offset 163, 106 lines modified |
| |
166 | ····if-nez·v2,·:cond_0 | 163 | ····if-nez·v2,·:cond_0 |
| |
167 | ····return-void | 164 | ····return-void |
| |
168 | ····.line·3 | 165 | ····.line·3 |
169 | ····:cond_0 | 166 | ····:cond_0 |
| 167 | ····move-object·v2,·p0 |
| |
| 168 | ····check-cast·v2,·Lcom/google/common/util/concurrent/TrustedListenableFutureTask$TrustedFutureInterruptibleTask; |
| |
| 169 | ····.line·4 |
| 170 | ····iget-object·v2,·v2,·Lcom/google/common/util/concurrent/TrustedListenableFutureTask$TrustedFutureInterruptibleTask;->this$0:Lcom/google/common/util/concurrent/TrustedListenableFutureTask; |
| |
170 | ····invoke-virtual·{p0},·Lcom/google/common/util/concurrent/InterruptibleTask;->isDone()Z | 171 | ····invoke-virtual·{v2},·Lcom/google/common/util/concurrent/FluentFuture$TrustedFuture;->isDone()Z |
| |
171 | ····move-result·v2 | 172 | ····move-result·v2 |
| |
172 | ····const/4·v3,·0x1 | 173 | ····const/4·v3,·0x1 |
| |
173 | ····xor-int/2addr·v2,·v3 | 174 | ····xor-int/2addr·v2,·v3 |
| |
174 | ····const/16·v4,·0x3e8 | 175 | ····const/16·v4,·0x3e8 |
| |
175 | ····const/4·v5,·0x0 | 176 | ····const/4·v5,·0x0 |
| |
176 | ····if-eqz·v2,·:cond_9 | 177 | ····if-eqz·v2,·:cond_9 |
| |
177 | ····.line·4 | 178 | ····.line·5 |
178 | ····:try_start_0 | 179 | ····:try_start_0 |
179 | ····invoke-virtual·{p0},·Lcom/google/common/util/concurrent/InterruptibleTask;->runInterruptibly()Ljava/lang/Object; | 180 | ····invoke-virtual·{p0},·Lcom/google/common/util/concurrent/InterruptibleTask;->runInterruptibly()Ljava/lang/Object; |
| |
180 | ····move-result-object·v6 | 181 | ····move-result-object·v6 |
181 | ····:try_end_0 | 182 | ····:try_end_0 |
182 | ····.catchall·{:try_start_0·..·:try_end_0}·:catchall_0 | 183 | ····.catchall·{:try_start_0·..·:try_end_0}·:catchall_0 |
| |
183 | ····goto·:goto_6 | 184 | ····goto·:goto_6 |
| |
184 | ····:catchall_0 | 185 | ····:catchall_0 |
185 | ····move-exception·v6 | 186 | ····move-exception·v6 |
| |
186 | ····.line·5 | 187 | ····.line·6 |
187 | ····sget-object·v7,·Lcom/google/common/util/concurrent/InterruptibleTask;->DONE:Ljava/lang/Runnable; | 188 | ····sget-object·v7,·Lcom/google/common/util/concurrent/InterruptibleTask;->DONE:Ljava/lang/Runnable; |
| |
188 | ····invoke-virtual·{p0,·v0,·v7},·Ljava/util/concurrent/atomic/AtomicReference;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;)Z | 189 | ····invoke-virtual·{p0,·v0,·v7},·Ljava/util/concurrent/atomic/AtomicReference;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;)Z |
| |
189 | ····move-result·v7 | 190 | ····move-result·v7 |
| |
190 | ····if-nez·v7,·:cond_8 | 191 | ····if-nez·v7,·:cond_8 |
| |
191 | ····.line·6 | 192 | ····.line·7 |
192 | ····invoke-virtual·{p0},·Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object; | 193 | ····invoke-virtual·{p0},·Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object; |
| |
193 | ····move-result-object·v7 | 194 | ····move-result-object·v7 |
| |
194 | ····check-cast·v7,·Ljava/lang/Runnable; | 195 | ····check-cast·v7,·Ljava/lang/Runnable; |
| |
195 | ····move·v8,·v5 | 196 | ····move·v8,·v5 |
| |
196 | ····move·v9,·v8 | 197 | ····move·v9,·v8 |
| |
197 | ····.line·7 | 198 | ····.line·8 |
198 | ····:goto_0 | 199 | ····:goto_0 |
199 | ····sget-object·v10,·Lcom/google/common/util/concurrent/InterruptibleTask;->INTERRUPTING:Ljava/lang/Runnable; | 200 | ····sget-object·v10,·Lcom/google/common/util/concurrent/InterruptibleTask;->INTERRUPTING:Ljava/lang/Runnable; |
| |
200 | ····if-eq·v7,·v10,·:cond_2 | 201 | ····if-eq·v7,·v10,·:cond_2 |
| |
201 | ····sget-object·v11,·Lcom/google/common/util/concurrent/InterruptibleTask;->PARKED:Ljava/lang/Runnable; | 202 | ····sget-object·v11,·Lcom/google/common/util/concurrent/InterruptibleTask;->PARKED:Ljava/lang/Runnable; |
| |
202 | ····if-ne·v7,·v11,·:cond_1 | 203 | ····if-ne·v7,·v11,·:cond_1 |
| |
203 | ····goto·:goto_1 | 204 | ····goto·:goto_1 |
| |
204 | ····:cond_1 | 205 | ····:cond_1 |
205 | ····if-eqz·v8,·:cond_8 | 206 | ····if-eqz·v8,·:cond_8 |
| |
206 | ····.line·8 | 207 | ····.line·9 |
207 | ····invoke-virtual·{v0},·Ljava/lang/Thread;->interrupt()V | 208 | ····invoke-virtual·{v0},·Ljava/lang/Thread;->interrupt()V |
| |
208 | ····goto·:goto_5 | 209 | ····goto·:goto_5 |
| |
209 | ····:cond_2 | 210 | ····:cond_2 |
210 | ····:goto_1 | 211 | ····:goto_1 |
211 | ····add-int/2addr·v9,·v3 | 212 | ····add-int/2addr·v9,·v3 |
| |
212 | ····if-le·v9,·v4,·:cond_6 | 213 | ····if-le·v9,·v4,·:cond_6 |
| |
213 | ····.line·9 | 214 | ····.line·10 |
214 | ····sget-object·v11,·Lcom/google/common/util/concurrent/InterruptibleTask;->PARKED:Ljava/lang/Runnable; | 215 | ····sget-object·v11,·Lcom/google/common/util/concurrent/InterruptibleTask;->PARKED:Ljava/lang/Runnable; |
| |
215 | ····if-eq·v7,·v11,·:cond_3 | 216 | ····if-eq·v7,·v11,·:cond_3 |
| |
216 | ····invoke-virtual·{p0,·v10,·v11},·Ljava/util/concurrent/atomic/AtomicReference;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;)Z | 217 | ····invoke-virtual·{p0,·v10,·v11},·Ljava/util/concurrent/atomic/AtomicReference;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;)Z |
| |
217 | ····move-result·v7 | 218 | ····move-result·v7 |
| |
218 | ····if-eqz·v7,·:cond_7 | 219 | ····if-eqz·v7,·:cond_7 |
| |
219 | ····.line·10 | 220 | ····.line·11 |
220 | ····:cond_3 | 221 | ····:cond_3 |
221 | ····invoke-static·{},·Ljava/lang/Thread;->interrupted()Z | 222 | ····invoke-static·{},·Ljava/lang/Thread;->interrupted()Z |
| |
222 | ····move-result·v7 | 223 | ····move-result·v7 |
| |
223 | ····if-nez·v7,·:cond_5 | 224 | ····if-nez·v7,·:cond_5 |
| |
Offset 271, 106 lines modified | Offset 275, 106 lines modified |
| |
271 | ····goto·:goto_3 | 275 | ····goto·:goto_3 |
| |
272 | ····:cond_5 | 276 | ····:cond_5 |
273 | ····:goto_2 | 277 | ····:goto_2 |
274 | ····move·v8,·v3 | 278 | ····move·v8,·v3 |
| |
275 | ····.line·11 | 279 | ····.line·12 |
276 | ····:goto_3 | 280 | ····:goto_3 |
277 | ····invoke-static·{p0},·Ljava/util/concurrent/locks/LockSupport;->park(Ljava/lang/Object;)V | 281 | ····invoke-static·{p0},·Ljava/util/concurrent/locks/LockSupport;->park(Ljava/lang/Object;)V |
| |
278 | ····goto·:goto_4 | 282 | ····goto·:goto_4 |
| |
279 | ····.line·12 | 283 | ····.line·13 |
280 | ····:cond_6 | 284 | ····:cond_6 |
281 | ····invoke-static·{},·Ljava/lang/Thread;->yield()V | 285 | ····invoke-static·{},·Ljava/lang/Thread;->yield()V |
| |
282 | ····.line·13 | 286 | ····.line·14 |
283 | ····:cond_7 | 287 | ····:cond_7 |
284 | ····:goto_4 | 288 | ····:goto_4 |
285 | ····invoke-virtual·{p0},·Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object; | 289 | ····invoke-virtual·{p0},·Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object; |
| |
286 | ····move-result-object·v7 | 290 | ····move-result-object·v7 |
| |
287 | ····check-cast·v7,·Ljava/lang/Runnable; | 291 | ····check-cast·v7,·Ljava/lang/Runnable; |
| |
288 | ····goto·:goto_0 | 292 | ····goto·:goto_0 |
| |
289 | ····:cond_8 | 293 | ····:cond_8 |
290 | ····:goto_5 | 294 | ····:goto_5 |
291 | ····if-eqz·v2,·:cond_12 | 295 | ····if-eqz·v2,·:cond_12 |
| |
292 | ····.line·14 | 296 | ····.line·15 |
293 | ····invoke-virtual·{p0,·v1,·v6},·Lcom/google/common/util/concurrent/InterruptibleTask;->afterRanInterruptibly(Ljava/lang/Object;Ljava/lang/Throwable;)V | 297 | ····invoke-virtual·{p0,·v1,·v6},·Lcom/google/common/util/concurrent/InterruptibleTask;->afterRanInterruptibly(Ljava/lang/Object;Ljava/lang/Throwable;)V |
| |
294 | ····goto·:goto_d | 298 | ····goto·:goto_d |
| |
295 | ····:cond_9 | 299 | ····:cond_9 |
296 | ····move-object·v6,·v1 | 300 | ····move-object·v6,·v1 |
| |
297 | ····.line·15 | 301 | ····.line·16 |
298 | ····:goto_6 | 302 | ····:goto_6 |
299 | ····sget-object·v7,·Lcom/google/common/util/concurrent/InterruptibleTask;->DONE:Ljava/lang/Runnable; | 303 | ····sget-object·v7,·Lcom/google/common/util/concurrent/InterruptibleTask;->DONE:Ljava/lang/Runnable; |
| |
300 | ····invoke-virtual·{p0,·v0,·v7},·Ljava/util/concurrent/atomic/AtomicReference;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;)Z | 304 | ····invoke-virtual·{p0,·v0,·v7},·Ljava/util/concurrent/atomic/AtomicReference;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;)Z |
| |
301 | ····move-result·v7 | 305 | ····move-result·v7 |
| |
302 | ····if-nez·v7,·:cond_11 | 306 | ····if-nez·v7,·:cond_11 |
| |
303 | ····.line·16 | 307 | ····.line·17 |
304 | ····invoke-virtual·{p0},·Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object; | 308 | ····invoke-virtual·{p0},·Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object; |
| |
305 | ····move-result-object·v7 | 309 | ····move-result-object·v7 |
| |
306 | ····check-cast·v7,·Ljava/lang/Runnable; | 310 | ····check-cast·v7,·Ljava/lang/Runnable; |
| |
307 | ····move·v8,·v5 | 311 | ····move·v8,·v5 |
| |
308 | ····move·v9,·v8 | 312 | ····move·v9,·v8 |
| |
309 | ····.line·17 | 313 | ····.line·18 |
310 | ····:goto_7 | 314 | ····:goto_7 |
311 | ····sget-object·v10,·Lcom/google/common/util/concurrent/InterruptibleTask;->INTERRUPTING:Ljava/lang/Runnable; | 315 | ····sget-object·v10,·Lcom/google/common/util/concurrent/InterruptibleTask;->INTERRUPTING:Ljava/lang/Runnable; |
| |
312 | ····if-eq·v7,·v10,·:cond_b | 316 | ····if-eq·v7,·v10,·:cond_b |
| |
313 | ····sget-object·v11,·Lcom/google/common/util/concurrent/InterruptibleTask;->PARKED:Ljava/lang/Runnable; | 317 | ····sget-object·v11,·Lcom/google/common/util/concurrent/InterruptibleTask;->PARKED:Ljava/lang/Runnable; |
| |
314 | ····if-ne·v7,·v11,·:cond_a | 318 | ····if-ne·v7,·v11,·:cond_a |
| |
315 | ····goto·:goto_8 | 319 | ····goto·:goto_8 |
| |
316 | ····:cond_a | 320 | ····:cond_a |
317 | ····if-eqz·v8,·:cond_11 | 321 | ····if-eqz·v8,·:cond_11 |
| |
318 | ····.line·18 | 322 | ····.line·19 |
319 | ····invoke-virtual·{v0},·Ljava/lang/Thread;->interrupt()V | 323 | ····invoke-virtual·{v0},·Ljava/lang/Thread;->interrupt()V |
| |
320 | ····goto·:goto_c | 324 | ····goto·:goto_c |
| |
321 | ····:cond_b | 325 | ····:cond_b |
322 | ····:goto_8 | 326 | ····:goto_8 |
323 | ····add-int/2addr·v9,·v3 | 327 | ····add-int/2addr·v9,·v3 |
| |
324 | ····if-le·v9,·v4,·:cond_f | 328 | ····if-le·v9,·v4,·:cond_f |
| |
325 | ····.line·19 | 329 | ····.line·20 |
326 | ····sget-object·v11,·Lcom/google/common/util/concurrent/InterruptibleTask;->PARKED:Ljava/lang/Runnable; | 330 | ····sget-object·v11,·Lcom/google/common/util/concurrent/InterruptibleTask;->PARKED:Ljava/lang/Runnable; |
| |
327 | ····if-eq·v7,·v11,·:cond_c | 331 | ····if-eq·v7,·v11,·:cond_c |
| |
328 | ····invoke-virtual·{p0,·v10,·v11},·Ljava/util/concurrent/atomic/AtomicReference;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;)Z | 332 | ····invoke-virtual·{p0,·v10,·v11},·Ljava/util/concurrent/atomic/AtomicReference;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;)Z |
| |
329 | ····move-result·v7 | 333 | ····move-result·v7 |
| |
330 | ····if-eqz·v7,·:cond_10 | 334 | ····if-eqz·v7,·:cond_10 |
| |
331 | ····.line·20 | 335 | ····.line·21 |
332 | ····:cond_c | 336 | ····:cond_c |
333 | ····invoke-static·{},·Ljava/lang/Thread;->interrupted()Z | 337 | ····invoke-static·{},·Ljava/lang/Thread;->interrupted()Z |
| |
334 | ····move-result·v7 | 338 | ····move-result·v7 |
| |
335 | ····if-nez·v7,·:cond_e | 339 | ····if-nez·v7,·:cond_e |
| |
Offset 383, 40 lines modified | Offset 387, 40 lines modified |
| |
383 | ····goto·:goto_a | 387 | ····goto·:goto_a |
| |
384 | ····:cond_e | 388 | ····:cond_e |
385 | ····:goto_9 | 389 | ····:goto_9 |
386 | ····move·v8,·v3 | 390 | ····move·v8,·v3 |
| |
387 | ····.line·21 | 391 | ····.line·22 |
388 | ····:goto_a | 392 | ····:goto_a |
389 | ····invoke-static·{p0},·Ljava/util/concurrent/locks/LockSupport;->park(Ljava/lang/Object;)V | 393 | ····invoke-static·{p0},·Ljava/util/concurrent/locks/LockSupport;->park(Ljava/lang/Object;)V |
| |
390 | ····goto·:goto_b | 394 | ····goto·:goto_b |
| |
391 | ····.line·22 | 395 | ····.line·23 |
392 | ····:cond_f | 396 | ····:cond_f |
393 | ····invoke-static·{},·Ljava/lang/Thread;->yield()V | 397 | ····invoke-static·{},·Ljava/lang/Thread;->yield()V |
| |
394 | ····.line·23 | 398 | ····.line·24 |
395 | ····:cond_10 | 399 | ····:cond_10 |
396 | ····:goto_b | 400 | ····:goto_b |
397 | ····invoke-virtual·{p0},·Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object; | 401 | ····invoke-virtual·{p0},·Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object; |
| |
398 | ····move-result-object·v7 | 402 | ····move-result-object·v7 |
| |
399 | ····check-cast·v7,·Ljava/lang/Runnable; | 403 | ····check-cast·v7,·Ljava/lang/Runnable; |
| |
400 | ····goto·:goto_7 | 404 | ····goto·:goto_7 |
| |
401 | ····:cond_11 | 405 | ····:cond_11 |
402 | ····:goto_c | 406 | ····:goto_c |
403 | ····if-eqz·v2,·:cond_12 | 407 | ····if-eqz·v2,·:cond_12 |
| |
404 | ····.line·24 | 408 | ····.line·25 |
405 | ····invoke-virtual·{p0,·v6,·v1},·Lcom/google/common/util/concurrent/InterruptibleTask;->afterRanInterruptibly(Ljava/lang/Object;Ljava/lang/Throwable;)V | 409 | ····invoke-virtual·{p0,·v6,·v1},·Lcom/google/common/util/concurrent/InterruptibleTask;->afterRanInterruptibly(Ljava/lang/Object;Ljava/lang/Throwable;)V |
| |
406 | ····:cond_12 | 410 | ····:cond_12 |
407 | ····:goto_d | 411 | ····:goto_d |
408 | ····return-void | 412 | ····return-void |
409 | .end·method | 413 | .end·method |
| |