1 # Copyright (C) 2015 The Android Open Source Project 2 # 3 # Licensed under the Apache License, Version 2.0 (the "License"); 4 # you may not use this file except in compliance with the License. 5 # You may obtain a copy of the License at 6 # 7 # http://www.apache.org/licenses/LICENSE-2.0 8 # 9 # Unless required by applicable law or agreed to in writing, software 10 # distributed under the License is distributed on an "AS IS" BASIS, 11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 # See the License for the specific language governing permissions and 13 # limitations under the License. 14 15 .class public LTestCase; 16 .super Ljava/lang/Object; 17 18 # This is a reduced test case that used to trigger an infinite loop 19 # in the DeadPhiHandling phase of the optimizing compiler (only used 20 # with debuggable flag). 21 .method public static testCase(IILjava/lang/Object;)V 22 .registers 5 23 const/4 v0, 0x0 24 25 :B4 26 invoke-static {}, Ljava/lang/System;->nanoTime()J 27 goto :B7 28 29 :B7 30 invoke-static {}, Ljava/lang/System;->nanoTime()J 31 if-nez p2, :Btmp 32 goto :B111 33 34 :Btmp 35 invoke-static {}, Ljava/lang/System;->nanoTime()J 36 if-nez p2, :B9 37 goto :B110 38 39 :B13 40 invoke-static {}, Ljava/lang/System;->nanoTime()J 41 add-int v0, p0, p1 42 goto :B7 43 44 :B110 45 invoke-static {}, Ljava/lang/System;->nanoTime()J 46 add-int v0, p0, p1 47 goto :B111 48 49 :B111 50 invoke-static {}, Ljava/lang/System;->nanoTime()J 51 goto :B4 52 53 :B9 54 invoke-static {}, Ljava/lang/System;->nanoTime()J 55 if-nez p2, :B10 56 57 :B11 58 invoke-static {}, Ljava/lang/System;->nanoTime()J 59 move v1, v0 60 goto :B12 61 62 :B10 63 invoke-static {}, Ljava/lang/System;->nanoTime()J 64 move-object v1, p2 65 goto :B12 66 67 :B12 68 invoke-static {}, Ljava/lang/System;->nanoTime()J 69 goto :B13 70 71 return-void 72 .end method 73