From 91a6516103b8bf8bb75c3a2840cbdec7521e74a7 Mon Sep 17 00:00:00 2001 From: Alexandre Rames Date: Mon, 19 Sep 2016 13:54:30 +0100 Subject: Remove the `CanTriggerGC` side-effects on a few instructions. The side-effect was specified for these instructions as they call runtime. We now have a list of entrypoints that we know cannot trigger GC. We can avoid requiring the side-effect for those. Test: Run ART test suite on Nexus 5X and host. Change-Id: I0e0e6a4d701ce6c75aff486cb0d1bc7fe2e8dda4 --- test/527-checker-array-access-split/src/Main.java | 64 +++++++++++------------ 1 file changed, 32 insertions(+), 32 deletions(-) (limited to 'test/527-checker-array-access-split/src/Main.java') diff --git a/test/527-checker-array-access-split/src/Main.java b/test/527-checker-array-access-split/src/Main.java index 9435ef1def..3de900a3a9 100644 --- a/test/527-checker-array-access-split/src/Main.java +++ b/test/527-checker-array-access-split/src/Main.java @@ -101,7 +101,7 @@ public class Main { /// CHECK: <> IntConstant /// CHECK: <> NullCheck /// CHECK: <> BoundsCheck - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: ArrayGet [<
>,<>] @@ -114,7 +114,7 @@ public class Main { /// CHECK: <> IntConstant /// CHECK: <> NullCheck /// CHECK: <> BoundsCheck - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: ArrayGet [<
>,<>] public static int get(int array[], int index) { @@ -140,7 +140,7 @@ public class Main { /// CHECK: <> IntConstant /// CHECK: <> NullCheck /// CHECK: <> BoundsCheck - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: ArraySet [<
>,<>,<>] @@ -159,7 +159,7 @@ public class Main { /// CHECK: <> IntConstant /// CHECK: <> NullCheck /// CHECK: <> BoundsCheck - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: ArraySet [<
>,<>,<>] public static void set(int array[], int index, int value) { @@ -183,10 +183,10 @@ public class Main { /// CHECK-DAG: <> IntConstant /// CHECK: <> NullCheck /// CHECK: <> BoundsCheck - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: <> ArrayGet [<>,<>] /// CHECK: <> Add [<>,<>] - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: ArraySet [<>,<>,<>] /// CHECK-START-ARM64: void Main.getSet(int[], int) GVN$after_arch (after) @@ -194,7 +194,7 @@ public class Main { /// CHECK-DAG: <> IntConstant /// CHECK: <> NullCheck /// CHECK: <> BoundsCheck - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK: <> ArrayGet [<
>,<>] /// CHECK: <> Add [<>,<>] /// CHECK-NOT: IntermediateAddress @@ -214,10 +214,10 @@ public class Main { /// CHECK-DAG: <> IntConstant /// CHECK: <> NullCheck /// CHECK: <> BoundsCheck - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: <> ArrayGet [<>,<>] /// CHECK: <> Add [<>,<>] - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: ArraySet [<>,<>,<>] /// CHECK-START-ARM: void Main.getSet(int[], int) GVN$after_arch (after) @@ -225,7 +225,7 @@ public class Main { /// CHECK-DAG: <> IntConstant /// CHECK: <> NullCheck /// CHECK: <> BoundsCheck - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK: <> ArrayGet [<
>,<>] /// CHECK: <> Add [<>,<>] /// CHECK-NOT: IntermediateAddress @@ -253,11 +253,11 @@ public class Main { /// CHECK-DAG: <> IntConstant /// CHECK: <> NullCheck /// CHECK: <> BoundsCheck - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: <> ArrayGet [<>,<>] /// CHECK: <> Add [<>,<>] /// CHECK: NewArray - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: ArraySet [<>,<>,<>] /// CHECK-START-ARM64: int[] Main.accrossGC(int[], int) GVN$after_arch (after) @@ -265,11 +265,11 @@ public class Main { /// CHECK-DAG: <> IntConstant /// CHECK: <> NullCheck /// CHECK: <> BoundsCheck - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK: <> ArrayGet [<>,<>] /// CHECK: <> Add [<>,<>] /// CHECK: NewArray - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK: ArraySet [<>,<>,<>] @@ -287,11 +287,11 @@ public class Main { /// CHECK-DAG: <> IntConstant /// CHECK: <> NullCheck /// CHECK: <> BoundsCheck - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: <> ArrayGet [<>,<>] /// CHECK: <> Add [<>,<>] /// CHECK: NewArray - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: ArraySet [<>,<>,<>] /// CHECK-START-ARM: int[] Main.accrossGC(int[], int) GVN$after_arch (after) @@ -299,11 +299,11 @@ public class Main { /// CHECK-DAG: <> IntConstant /// CHECK: <> NullCheck /// CHECK: <> BoundsCheck - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK: <> ArrayGet [<>,<>] /// CHECK: <> Add [<>,<>] /// CHECK: NewArray - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK: ArraySet [<>,<>,<>] public static int[] accrossGC(int array[], int index) { @@ -343,10 +343,10 @@ public class Main { /// CHECK: <> Phi /// CHECK: If // -------------- Loop - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: <> ArrayGet [<>,<>] /// CHECK: <> Add [<>,<>] - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: ArraySet [<>,<>,<>] /// CHECK-START-ARM64: int Main.canMergeAfterBCE1() GVN$after_arch (after) @@ -356,7 +356,7 @@ public class Main { /// CHECK: <> Phi /// CHECK: If // -------------- Loop - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK: <> ArrayGet [<
>,<>] /// CHECK: <> Add [<>,<>] /// CHECK-NOT: IntermediateAddress @@ -380,10 +380,10 @@ public class Main { /// CHECK: <> Phi /// CHECK: If // -------------- Loop - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: <> ArrayGet [<>,<>] /// CHECK: <> Add [<>,<>] - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK-NEXT: ArraySet [<>,<>,<>] /// CHECK-START-ARM: int Main.canMergeAfterBCE1() GVN$after_arch (after) @@ -393,7 +393,7 @@ public class Main { /// CHECK: <> Phi /// CHECK: If // -------------- Loop - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK: <> ArrayGet [<
>,<>] /// CHECK: <> Add [<>,<>] /// CHECK-NOT: IntermediateAddress @@ -437,12 +437,12 @@ public class Main { /// CHECK: If // -------------- Loop /// CHECK-DAG: <> Add [<>,<>] - /// CHECK-DAG: <> IntermediateAddress [<>,<>] + /// CHECK-DAG: <> IntermediateAddress [<>,<>] /// CHECK-DAG: <> ArrayGet [<>,<>] - /// CHECK-DAG: <> IntermediateAddress [<>,<>] + /// CHECK-DAG: <> IntermediateAddress [<>,<>] /// CHECK-DAG: <> ArrayGet [<>,<>] /// CHECK: <> Add [<>,<>] - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK: ArraySet [<>,<>,<>] /// CHECK-START-ARM64: int Main.canMergeAfterBCE2() GVN$after_arch (after) @@ -453,7 +453,7 @@ public class Main { /// CHECK: If // -------------- Loop /// CHECK-DAG: <> Add [<>,<>] - /// CHECK-DAG: <> IntermediateAddress [<>,<>] + /// CHECK-DAG: <> IntermediateAddress [<>,<>] /// CHECK-DAG: <> ArrayGet [<
>,<>] /// CHECK-DAG: <> ArrayGet [<
>,<>] /// CHECK: <> Add [<>,<>] @@ -486,12 +486,12 @@ public class Main { /// CHECK: If // -------------- Loop /// CHECK-DAG: <> Add [<>,<>] - /// CHECK-DAG: <> IntermediateAddress [<>,<>] + /// CHECK-DAG: <> IntermediateAddress [<>,<>] /// CHECK-DAG: <> ArrayGet [<>,<>] - /// CHECK-DAG: <> IntermediateAddress [<>,<>] + /// CHECK-DAG: <> IntermediateAddress [<>,<>] /// CHECK-DAG: <> ArrayGet [<>,<>] /// CHECK: <> Add [<>,<>] - /// CHECK: <> IntermediateAddress [<>,<>] + /// CHECK: <> IntermediateAddress [<>,<>] /// CHECK: ArraySet [<>,<>,<>] /// CHECK-START-ARM: int Main.canMergeAfterBCE2() GVN$after_arch (after) @@ -502,7 +502,7 @@ public class Main { /// CHECK: If // -------------- Loop /// CHECK-DAG: <> Add [<>,<>] - /// CHECK-DAG: <> IntermediateAddress [<>,<>] + /// CHECK-DAG: <> IntermediateAddress [<>,<>] /// CHECK-DAG: <> ArrayGet [<
>,<>] /// CHECK-DAG: <> ArrayGet [<
>,<>] /// CHECK: <> Add [<>,<>] -- cgit v1.2.3-59-g8ed1b