diff options
author | Nicolas Geoffray <ngeoffray@google.com> | 2014-06-13 08:05:51 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2014-06-11 15:59:20 +0000 |
commit | b08f63c21de64f8b74003e3638e100471bd099f3 (patch) | |
tree | ce0feab2c5a04e5a2d811e0b4b88d34bebc22730 /test | |
parent | 3316ff53b8745707a492d0442a94174abc679ece (diff) | |
parent | e27f31a81636ad74bd3376ee39cf215941b85c0e (diff) | |
download | art-b08f63c21de64f8b74003e3638e100471bd099f3.zip art-b08f63c21de64f8b74003e3638e100471bd099f3.tar.gz art-b08f63c21de64f8b74003e3638e100471bd099f3.tar.bz2 |
Merge "Enable the register allocator on ARM."
Diffstat (limited to 'test')
-rw-r--r-- | test/404-optimizing-allocator/src/Main.java | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/test/404-optimizing-allocator/src/Main.java b/test/404-optimizing-allocator/src/Main.java index 60477f9..7b31820 100644 --- a/test/404-optimizing-allocator/src/Main.java +++ b/test/404-optimizing-allocator/src/Main.java @@ -27,7 +27,8 @@ public class Main { expectEquals(10, $opt$reg$TestMultipleLive()); expectEquals(1, $opt$reg$TestWithBreakAndContinue()); expectEquals(-15, $opt$reg$testSpillInIf(5, 6, 7)); - expectEquals(-567, $opt$reg$TestAgressiveLive(1, 2, 3, 4, 5, 6, 7)); + expectEquals(-567, $opt$reg$TestAgressiveLive1(1, 2, 3, 4, 5, 6, 7)); + expectEquals(-77, $opt$reg$TestAgressiveLive2(1, 2, 3, 4, 5, 6, 7)); } public static int $opt$reg$TestLostCopy() { @@ -125,7 +126,7 @@ public class Main { return a - b - c - d - e; } - public static int $opt$reg$TestAgressiveLive(int a, int b, int c, int d, int e, int f, int g) { + public static int $opt$reg$TestAgressiveLive1(int a, int b, int c, int d, int e, int f, int g) { int h = a - b; int i = c - d; int j = e - f; @@ -146,6 +147,17 @@ public class Main { return a - b - c - d - e - f - g - h - i - j - k; } + public static int $opt$reg$TestAgressiveLive2(int a, int b, int c, int d, int e, int f, int g) { + int h = a - b; + int i = c - d; + int j = e - f; + int k = 42 + g - a; + do { + h++; + } while (h != 5); + return a - b - c - d - e - f - g - h - i - j - k; + } + public static void expectEquals(int expected, int value) { if (expected != value) { throw new Error("Expected: " + expected + ", got: " + value); |