1 # Copyright (c) 2016, the R8 project authors. Please see the AUTHORS file 2 # for details. All rights reserved. Use of this source code is governed by a 3 # BSD-style license that can be found in the LICENSE file. 4 5 .class public final LTestObject; 6 .super Ljava/lang/Object; 7 8 .field final list:Ljava/util/ArrayList; 9 .field private final s:Z 10 11 .method public final a(LTest;I)Z 12 .registers 9 13 .prologue 14 const/4 v2, 0x1 15 const/4 v1, 0x0 16 invoke-virtual {p1}, LTest;->returnBoolean()Z 17 move-result v0 18 if-eqz v0, :cond_a 19 move v0, v1 20 :goto_9 21 return v0 22 :cond_a 23 and-int/lit8 v0, p2, 0x2 24 if-nez v0, :cond_14 25 iget-boolean v0, p0, LTestObject;->b:Z 26 if-eqz v0, :cond_14 27 move v0, v2 28 goto :goto_9 29 :cond_14 30 iget-object v0, p0, LTestObject;->list:Ljava/util/ArrayList; 31 invoke-virtual {v0}, Ljava/util/ArrayList;->size()I 32 move-result v4 33 move v3, v1 34 :goto_1b 35 if-ge v3, v4, :cond_3b 36 iget-object v0, p0, LTestObject;->list:Ljava/util/ArrayList; 37 invoke-virtual {v0, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; 38 move-result-object v0 39 check-cast v0, LTest; 40 and-int/lit8 v5, p2, 0x1 41 if-eqz v5, :cond_2f 42 invoke-virtual {v0}, LTest;->returnBoolean()Z 43 move-result v5 44 if-nez v5, :cond_37 45 :cond_2f 46 invoke-virtual {v0, p1}, LTest;->returnTheOtherBoolean(LTest;)Z 47 move-result v0 48 if-eqz v0, :cond_37 49 move v0, v2 50 goto :goto_9 51 :cond_37 52 add-int/lit8 v0, v3, 0x1 53 move v3, v0 54 goto :goto_1b 55 :cond_3b 56 move v0, v1 57 goto :goto_9 58 .end method 59