diff options
author | 2017-03-01 14:03:51 -0800 | |
---|---|---|
committer | 2017-03-06 10:22:17 -0800 | |
commit | 86974900268b1d903d74b39a32746d60c77d21f3 (patch) | |
tree | de0ef3b3499611fa07a6989462ed60400c15a588 /test/532-checker-nonnull-arrayset/src/Main.java | |
parent | b2a6d1218c527a685c421984292c47d241cf4a11 (diff) |
Array store/allocation elimination
Allow array store/allocation elimination if it's only accessed
by constant index, so that there is no index-aliasing.
Bug: 35634932
Test: m -j20 test-art-host-run-test
Change-Id: Ief6e27f5bdbb30988ff4f318a34b4251c93865fa
Diffstat (limited to 'test/532-checker-nonnull-arrayset/src/Main.java')
-rw-r--r-- | test/532-checker-nonnull-arrayset/src/Main.java | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/test/532-checker-nonnull-arrayset/src/Main.java b/test/532-checker-nonnull-arrayset/src/Main.java index 2c701bbb94..61c9e88e9e 100644 --- a/test/532-checker-nonnull-arrayset/src/Main.java +++ b/test/532-checker-nonnull-arrayset/src/Main.java @@ -30,10 +30,14 @@ public class Main { /// CHECK: ReturnVoid public static void test() { Object[] array = new Object[2]; + // Storing to static to avoid some lse optimization. + sArray = array; Object nonNull = array[0]; nonNull.getClass(); // Ensure nonNull has an implicit null check. array[1] = nonNull; } public static void main(String[] args) {} + + static Object[] sArray; } |