summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorBen Cheng <bccheng@google.com>2012-01-18 13:45:57 -0800
committerBen Cheng <bccheng@google.com>2012-01-18 14:47:17 -0800
commit232c385b9ece322d677a48947ab1e052c1e2427c (patch)
treecbcf45e331715595e4016f9ddb7a7bd899cb6871 /tests
parent390d7c08821750d0633435278b2d533fd6b1a7a5 (diff)
downloadandroid_dalvik-232c385b9ece322d677a48947ab1e052c1e2427c.tar.gz
android_dalvik-232c385b9ece322d677a48947ab1e052c1e2427c.tar.bz2
android_dalvik-232c385b9ece322d677a48947ab1e052c1e2427c.zip
Bug fix for control-flow construction involving nested loops.
Bug: 5884080 Change-Id: Ic2f42abae3e71f9c0729984902396f92902184a3
Diffstat (limited to 'tests')
-rw-r--r--tests/083-jit-regressions/expected.txt1
-rw-r--r--tests/083-jit-regressions/info.txt1
-rw-r--r--tests/083-jit-regressions/src/Main.java21
3 files changed, 23 insertions, 0 deletions
diff --git a/tests/083-jit-regressions/expected.txt b/tests/083-jit-regressions/expected.txt
index 1f30d210b..4b9ad5b2d 100644
--- a/tests/083-jit-regressions/expected.txt
+++ b/tests/083-jit-regressions/expected.txt
@@ -1,3 +1,4 @@
b2296099 passes
b2302318 passes
b2487514 passes
+b5884080 passes
diff --git a/tests/083-jit-regressions/info.txt b/tests/083-jit-regressions/info.txt
index b791abaa9..00c24ee6f 100644
--- a/tests/083-jit-regressions/info.txt
+++ b/tests/083-jit-regressions/info.txt
@@ -8,3 +8,4 @@ This test covers JIT regressions
2296099 JIT shift bug
2302318 Crash during spin-on-suspend testing
2487514 Missed exception in PriorityBlockingQueueTest.testToArray1_BadArg
+5884080 ICS JIT regression in nested loop formation
diff --git a/tests/083-jit-regressions/src/Main.java b/tests/083-jit-regressions/src/Main.java
index 1f1dee33d..3b596dbb5 100644
--- a/tests/083-jit-regressions/src/Main.java
+++ b/tests/083-jit-regressions/src/Main.java
@@ -24,6 +24,7 @@ public class Main {
b2296099Test();
b2302318Test();
b2487514Test();
+ b5884080Test();
}
static void b2296099Test() throws Exception {
@@ -105,6 +106,26 @@ public class Main {
" (expecting 1000)");
}
}
+
+ static void b5884080Test() {
+ int vA = 1;
+
+ int l = 0;
+ do
+ {
+ int k = 0;
+ do
+ vA += 1;
+ while(++k < 100);
+ } while(++l < 1000);
+ if (vA == 100001) {
+ System.out.println("b5884080 passes");
+ }
+ else {
+ System.out.println("b5884080 fails: vA is " + vA +
+ " (expecting 100001)");
+ }
+ }
}
class SpinThread extends Thread {