summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/572-checker-array-get-regression/expected.txt2
-rw-r--r--test/572-checker-array-get-regression/info.txt2
-rw-r--r--test/572-checker-array-get-regression/src/Main.java15
3 files changed, 10 insertions, 9 deletions
diff --git a/test/572-checker-array-get-regression/expected.txt b/test/572-checker-array-get-regression/expected.txt
index c08d7831c0..f7d1ad4743 100644
--- a/test/572-checker-array-get-regression/expected.txt
+++ b/test/572-checker-array-get-regression/expected.txt
@@ -1 +1 @@
-1048575
+524287
diff --git a/test/572-checker-array-get-regression/info.txt b/test/572-checker-array-get-regression/info.txt
index 023d5b0c19..d06feee152 100644
--- a/test/572-checker-array-get-regression/info.txt
+++ b/test/572-checker-array-get-regression/info.txt
@@ -1,3 +1,3 @@
Regression test for the ARM64 Baker's read barrier fast path compiler
-instrumentatin of array loads with a large constant index, where we
+instrumentation of array loads with a large constant index, where we
used to require too many scratch (temporary) registers.
diff --git a/test/572-checker-array-get-regression/src/Main.java b/test/572-checker-array-get-regression/src/Main.java
index 139221555a..a9bf326427 100644
--- a/test/572-checker-array-get-regression/src/Main.java
+++ b/test/572-checker-array-get-regression/src/Main.java
@@ -22,9 +22,9 @@ public class Main {
/// CHECK-START: java.lang.Integer Main.test() ssa_builder (after)
/// CHECK-DAG: <<Method:[ij]\d+>> CurrentMethod
- /// CHECK-DAG: <<Const2P20:i\d+>> IntConstant 1048576
+ /// CHECK-DAG: <<Const2P19:i\d+>> IntConstant 524288
/// CHECK-DAG: <<ConstM1:i\d+>> IntConstant -1
- /// CHECK-DAG: <<Array:l\d+>> NewArray [<<Const2P20>>,<<Method>>]
+ /// CHECK-DAG: <<Array:l\d+>> NewArray [<<Const2P19>>,<<Method>>]
/// CHECK-DAG: <<NullCheck1:l\d+>> NullCheck [<<Array>>]
/// CHECK-DAG: <<Length1:i\d+>> ArrayLength [<<NullCheck1>>]
/// CHECK-DAG: <<Index:i\d+>> Add [<<Length1>>,<<ConstM1>>]
@@ -34,16 +34,17 @@ public class Main {
/// CHECK-DAG: <<LastElement:l\d+>> ArrayGet [<<NullCheck2>>,<<BoundsCheck>>]
/// CHECK-DAG: Return [<<LastElement>>]
+
/// CHECK-START: java.lang.Integer Main.test() register (before)
/// CHECK-DAG: <<Method:[ij]\d+>> CurrentMethod
- /// CHECK-DAG: <<Const2P20:i\d+>> IntConstant 1048576
- /// CHECK-DAG: <<Const2P20M1:i\d+>> IntConstant 1048575
- /// CHECK-DAG: <<Array:l\d+>> NewArray [<<Const2P20>>,<<Method>>]
- /// CHECK-DAG: <<LastElement:l\d+>> ArrayGet [<<Array>>,<<Const2P20M1>>]
+ /// CHECK-DAG: <<Const2P19:i\d+>> IntConstant 524288
+ /// CHECK-DAG: <<Const2P19M1:i\d+>> IntConstant 524287
+ /// CHECK-DAG: <<Array:l\d+>> NewArray [<<Const2P19>>,<<Method>>]
+ /// CHECK-DAG: <<LastElement:l\d+>> ArrayGet [<<Array>>,<<Const2P19M1>>]
/// CHECK-DAG: Return [<<LastElement>>]
public static Integer test() {
- Integer[] integers = new Integer[1024 * 1024];
+ Integer[] integers = new Integer[1 << 19];
initIntegerArray(integers);
// Array load with a large constant index (after constant folding
// and bounds check elimination).