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