8300638: Tier1 IR Test failure after JDK-8298632 on macosx-x64-debug

Reviewed-by: kvn, pli
This commit is contained in:
Jatin Bhateja 2023-01-22 06:47:00 +00:00
parent 3ea4eac145
commit 7ced08d4ec
16 changed files with 94 additions and 60 deletions

View File

@ -35,6 +35,7 @@
* -XX:+WhiteBoxAPI
* compiler.vectorization.runner.ArrayIndexFillTest
*
* @requires (os.simpleArch == "x64") | (os.simpleArch == "aarch64")
* @requires vm.compiler2.enabled & vm.flagless
*/

View File

@ -36,6 +36,7 @@
* -XX:-OptimizeFill
* compiler.vectorization.runner.ArrayInvariantFillTest
*
* @requires (os.simpleArch == "x64") | (os.simpleArch == "aarch64")
* @requires vm.compiler2.enabled & vm.flagless
*/

View File

@ -35,6 +35,7 @@
* -XX:+WhiteBoxAPI
* compiler.vectorization.runner.ArrayShiftOpTest
*
* @requires (os.simpleArch == "x64") | (os.simpleArch == "aarch64")
* @requires vm.compiler2.enabled & vm.flagless
*/
@ -70,7 +71,7 @@ public class ArrayShiftOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "avx512f", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
@IR(applyIfCPUFeature = {"avx512f", "true"},
counts = {IRNode.ROTATE_RIGHT_V, ">0"})
@ -83,7 +84,7 @@ public class ArrayShiftOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "avx512f", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
@IR(applyIfCPUFeature = {"avx512f", "true"},
counts = {IRNode.ROTATE_RIGHT_V, ">0"})

View File

@ -176,7 +176,7 @@ public class ArrayTypeConvertTest extends VectorizationTestRunner {
// ---------------- Convert Subword-I to F/D ----------------
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "avx", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "avx2", "true"},
counts = {IRNode.VECTOR_CAST_S2X, ">0"})
public float[] convertShortToFloat() {
float[] res = new float[SIZE];
@ -263,7 +263,7 @@ public class ArrayTypeConvertTest extends VectorizationTestRunner {
// ---------------- Convert F/D to Subword-I ----------------
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "avx", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "avx2", "true"},
counts = {IRNode.VECTOR_CAST_F2X, ">0"})
public short[] convertFloatToShort() {
short[] res = new short[SIZE];
@ -274,7 +274,7 @@ public class ArrayTypeConvertTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "avx", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "avx2", "true"},
counts = {IRNode.VECTOR_CAST_F2X, ">0"})
public char[] convertFloatToChar() {
char[] res = new char[SIZE];

View File

@ -73,7 +73,9 @@ public class BasicBooleanOpTest extends VectorizationTestRunner {
@Test
@IR(applyIfCPUFeature = {"asimd", "true"},
counts = {IRNode.AND_V, ">0"})
@IR(applyIfCPUFeature = {"avx512vl", "true"},
@IR(applyIfCPUFeatureAnd = {"avx512f", "false", "sse2", "true"},
counts = {IRNode.AND_V, ">0"})
@IR(applyIfCPUFeature = {"avx512f", "true"},
counts = {IRNode.MACRO_LOGIC_V, ">0"})
public boolean[] vectorAnd() {
boolean[] res = new boolean[SIZE];

View File

@ -107,7 +107,7 @@ public class BasicByteOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.MUL_V, ">0"})
public byte[] vectorMul() {
byte[] res = new byte[SIZE];
@ -118,7 +118,7 @@ public class BasicByteOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.MUL_V, ">0", IRNode.ADD_V, ">0"})
public byte[] vectorMulAdd() {
byte[] res = new byte[SIZE];
@ -129,7 +129,7 @@ public class BasicByteOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.MUL_V, ">0", IRNode.SUB_V, ">0"})
public byte[] vectorMulSub() {
byte[] res = new byte[SIZE];
@ -186,7 +186,7 @@ public class BasicByteOpTest extends VectorizationTestRunner {
// ---------------- Shift ----------------
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.LSHIFT_V, ">0"})
public byte[] vectorShiftLeft() {
byte[] res = new byte[SIZE];
@ -197,7 +197,7 @@ public class BasicByteOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.RSHIFT_V, ">0"})
public byte[] vectorSignedShiftRight() {
byte[] res = new byte[SIZE];
@ -208,7 +208,7 @@ public class BasicByteOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.RSHIFT_V, ">0"})
public byte[] vectorUnsignedShiftRight() {
byte[] res = new byte[SIZE];

View File

@ -77,7 +77,7 @@ public class BasicCharOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "ssse3", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
@IR(failOn = {IRNode.ABS_V})
public char[] vectorAbs() {

View File

@ -35,6 +35,7 @@
* -XX:+WhiteBoxAPI
* compiler.vectorization.runner.BasicDoubleOpTest
*
* @requires (os.simpleArch == "x64") | (os.simpleArch == "aarch64")
* @requires vm.compiler2.enabled & vm.flagless
*/
@ -96,7 +97,7 @@ public class BasicDoubleOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "avx", "true"},
counts = {IRNode.ROUND_DOUBLE_MODE_V, ">0"})
public double[] vectorCeil() {
double[] res = new double[SIZE];
@ -107,7 +108,7 @@ public class BasicDoubleOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "avx", "true"},
counts = {IRNode.ROUND_DOUBLE_MODE_V, ">0"})
public double[] vectorFloor() {
double[] res = new double[SIZE];
@ -118,7 +119,7 @@ public class BasicDoubleOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "avx", "true"},
counts = {IRNode.ROUND_DOUBLE_MODE_V, ">0"})
public double[] vectorRint() {
double[] res = new double[SIZE];
@ -173,7 +174,7 @@ public class BasicDoubleOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "avx", "true"},
counts = {IRNode.MAX_V, ">0"})
public double[] vectorMax() {
double[] res = new double[SIZE];
@ -184,7 +185,7 @@ public class BasicDoubleOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "avx", "true"},
counts = {IRNode.MIN_V, ">0"})
public double[] vectorMin() {
double[] res = new double[SIZE];
@ -195,7 +196,9 @@ public class BasicDoubleOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "fma", "true"},
@IR(applyIfCPUFeature = {"asimd", "true"},
counts = {IRNode.FMA_V, ">0"})
@IR(applyIfCPUFeatureAnd = {"fma", "true", "avx", "true"},
counts = {IRNode.FMA_V, ">0"})
public double[] vectorMulAdd() {
double[] res = new double[SIZE];
@ -206,7 +209,9 @@ public class BasicDoubleOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "fma", "true"},
@IR(applyIfCPUFeature = {"asimd", "true"},
counts = {IRNode.FMA_V, ">0"})
@IR(applyIfCPUFeatureAnd = {"fma", "true", "avx", "true"},
counts = {IRNode.FMA_V, ">0"})
public double[] vectorMulSub1() {
double[] res = new double[SIZE];
@ -217,7 +222,9 @@ public class BasicDoubleOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "fma", "true"},
@IR(applyIfCPUFeature = {"asimd", "true"},
counts = {IRNode.FMA_V, ">0"})
@IR(applyIfCPUFeatureAnd = {"fma", "true", "avx", "true"},
counts = {IRNode.FMA_V, ">0"})
public double[] vectorMulSub2() {
double[] res = new double[SIZE];
@ -228,7 +235,9 @@ public class BasicDoubleOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "fma", "true"},
@IR(applyIfCPUFeature = {"asimd", "true"},
counts = {IRNode.FMA_V, ">0"})
@IR(applyIfCPUFeatureAnd = {"fma", "true", "avx", "true"},
counts = {IRNode.FMA_V, ">0"})
public double[] vectorNegateMulAdd1() {
double[] res = new double[SIZE];
@ -239,7 +248,9 @@ public class BasicDoubleOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "fma", "true"},
@IR(applyIfCPUFeature = {"asimd", "true"},
counts = {IRNode.FMA_V, ">0"})
@IR(applyIfCPUFeatureAnd = {"fma", "true", "avx", "true"},
counts = {IRNode.FMA_V, ">0"})
public double[] vectorNegateMulAdd2() {
double[] res = new double[SIZE];
@ -250,7 +261,9 @@ public class BasicDoubleOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "fma", "true"},
@IR(applyIfCPUFeature = {"asimd", "true"},
counts = {IRNode.FMA_V, ">0"})
@IR(applyIfCPUFeatureAnd = {"fma", "true", "avx", "true"},
counts = {IRNode.FMA_V, ">0"})
public double[] vectorNegateMulSub() {
double[] res = new double[SIZE];

View File

@ -35,6 +35,7 @@
* -XX:+WhiteBoxAPI
* compiler.vectorization.runner.BasicFloatOpTest
*
* @requires (os.simpleArch == "x64") | (os.simpleArch == "aarch64")
* @requires vm.compiler2.enabled & vm.flagless
*/
@ -140,7 +141,7 @@ public class BasicFloatOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "avx", "true"},
counts = {IRNode.MAX_V, ">0"})
public float[] vectorMax() {
float[] res = new float[SIZE];
@ -151,7 +152,7 @@ public class BasicFloatOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "avx", "true"},
counts = {IRNode.MIN_V, ">0"})
public float[] vectorMin() {
float[] res = new float[SIZE];
@ -162,7 +163,9 @@ public class BasicFloatOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "fma", "true"},
@IR(applyIfCPUFeature = {"asimd", "true"},
counts = {IRNode.FMA_V, ">0"})
@IR(applyIfCPUFeatureAnd = {"fma", "true", "avx", "true"},
counts = {IRNode.FMA_V, ">0"})
public float[] vectorMulAdd() {
float[] res = new float[SIZE];
@ -173,7 +176,9 @@ public class BasicFloatOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "fma", "true"},
@IR(applyIfCPUFeature = {"asimd", "true"},
counts = {IRNode.FMA_V, ">0"})
@IR(applyIfCPUFeatureAnd = {"fma", "true", "avx", "true"},
counts = {IRNode.FMA_V, ">0"})
public float[] vectorMulSub1() {
float[] res = new float[SIZE];
@ -184,7 +189,9 @@ public class BasicFloatOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "fma", "true"},
@IR(applyIfCPUFeature = {"asimd", "true"},
counts = {IRNode.FMA_V, ">0"})
@IR(applyIfCPUFeatureAnd = {"fma", "true", "avx", "true"},
counts = {IRNode.FMA_V, ">0"})
public float[] vectorMulSub2() {
float[] res = new float[SIZE];
@ -195,7 +202,9 @@ public class BasicFloatOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "fma", "true"},
@IR(applyIfCPUFeature = {"asimd", "true"},
counts = {IRNode.FMA_V, ">0"})
@IR(applyIfCPUFeatureAnd = {"fma", "true", "avx", "true"},
counts = {IRNode.FMA_V, ">0"})
public float[] vectorNegateMulAdd1() {
float[] res = new float[SIZE];
@ -206,7 +215,9 @@ public class BasicFloatOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "fma", "true"},
@IR(applyIfCPUFeature = {"asimd", "true"},
counts = {IRNode.FMA_V, ">0"})
@IR(applyIfCPUFeatureAnd = {"fma", "true", "avx", "true"},
counts = {IRNode.FMA_V, ">0"})
public float[] vectorNegateMulAdd2() {
float[] res = new float[SIZE];
@ -217,7 +228,9 @@ public class BasicFloatOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "fma", "true"},
@IR(applyIfCPUFeature = {"asimd", "true"},
counts = {IRNode.FMA_V, ">0"})
@IR(applyIfCPUFeatureAnd = {"fma", "true", "avx", "true"},
counts = {IRNode.FMA_V, ">0"})
public float[] vectorNegateMulSub() {
float[] res = new float[SIZE];

View File

@ -35,6 +35,7 @@
* -XX:+WhiteBoxAPI
* compiler.vectorization.runner.BasicLongOpTest
*
* @requires (os.simpleArch == "x64") | (os.simpleArch == "aarch64")
* @requires vm.compiler2.enabled & vm.flagless
*/
@ -118,9 +119,9 @@ public class BasicLongOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"sve", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"sve", "true", "sse4_1", "true"},
counts = {IRNode.ADD_V, ">0"})
@IR(applyIfCPUFeatureOr = {"sve", "true", "avx512dq", "true"},
@IR(applyIfCPUFeatureOr = {"sve", "true", "sse4_1", "true"},
counts = {IRNode.MUL_V, ">0"})
public long[] vectorMulAdd() {
long[] res = new long[SIZE];
@ -131,7 +132,7 @@ public class BasicLongOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"sve", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"sve", "true", "sse4_1", "true"},
counts = {IRNode.MUL_V, ">0", IRNode.SUB_V, ">0"})
public long[] vectorMulSub() {
long[] res = new long[SIZE];

View File

@ -35,6 +35,7 @@
* -XX:+WhiteBoxAPI
* compiler.vectorization.runner.LoopArrayIndexComputeTest
*
* @requires (os.simpleArch == "x64") | (os.simpleArch == "aarch64")
* @requires vm.compiler2.enabled & vm.flagless
*/
@ -90,9 +91,9 @@ public class LoopArrayIndexComputeTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"sve", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"sve", "true", "avx2", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
@IR(applyIfCPUFeatureOr = {"sve", "true", "sse4_1", "true"},
@IR(applyIfCPUFeatureOr = {"sve", "true", "avx2", "true"},
counts = {IRNode.MUL_V, ">0"})
public int[] indexMinusConstant() {
int[] res = new int[SIZE];
@ -103,7 +104,7 @@ public class LoopArrayIndexComputeTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.MUL_V, ">0"})
@ -117,9 +118,9 @@ public class LoopArrayIndexComputeTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"sve", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"sve", "true", "avx2", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
@IR(applyIfCPUFeatureOr = {"sve", "true", "sse4_1", "true"},
@IR(applyIfCPUFeatureOr = {"sve", "true", "avx2", "true"},
counts = {IRNode.MUL_V, ">0"})
public int[] indexMinusInvariant() {
int[] res = new int[SIZE];
@ -131,7 +132,7 @@ public class LoopArrayIndexComputeTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.MUL_V, ">0"})

View File

@ -93,7 +93,7 @@ public class LoopCombinedOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
public int[] opWithLoopInvariant() {
int[] res = new int[SIZE];
@ -104,7 +104,7 @@ public class LoopCombinedOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
public int[] opWithConstantAndLoopInvariant() {
int[] res = new int[SIZE];
@ -126,7 +126,7 @@ public class LoopCombinedOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
public int[] multipleOpsWithMultipleConstants() {
int[] res = new int[SIZE];
@ -152,7 +152,7 @@ public class LoopCombinedOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
public int[] multipleStoresWithCommonSubExpression() {
int[] res1 = new int[SIZE];
@ -247,7 +247,7 @@ public class LoopCombinedOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse3", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
public int[] multipleOpsWith2DifferentTypesAndSharedOp() {
int i = 0, sum = 0;
@ -297,7 +297,7 @@ public class LoopCombinedOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
public int[] manuallyUnrolledStride2() {
int[] res = new int[SIZE];
@ -309,7 +309,7 @@ public class LoopCombinedOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
public int partialVectorizableLoop() {
int[] res = new int[SIZE];

View File

@ -67,7 +67,7 @@ public class LoopLiveOutNodesTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
public int SimpleIvUsed() {
int i = 0;

View File

@ -110,7 +110,7 @@ public class LoopRangeStrideTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
public int[] shortInductionLoop() {
int[] res = new int[SIZE];
@ -175,7 +175,7 @@ public class LoopRangeStrideTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
public int[] countDownLoop() {
int[] res = new int[SIZE];
@ -196,7 +196,7 @@ public class LoopRangeStrideTest extends VectorizationTestRunner {
// ---------- Stride with scale ----------
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
public int[] countupLoopWithNegScale() {
int[] res = new int[SIZE];
@ -207,7 +207,7 @@ public class LoopRangeStrideTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
public int[] countDownLoopWithNegScale() {
int[] res = new int[SIZE];

View File

@ -35,6 +35,7 @@
* -XX:+WhiteBoxAPI
* compiler.vectorization.runner.LoopReductionOpTest
*
* @requires (os.simpleArch == "x64") | (os.simpleArch == "aarch64")
* @requires vm.compiler2.enabled & vm.flagless
*
*/
@ -77,9 +78,9 @@ public class LoopReductionOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse3", "true"},
counts = {IRNode.LOAD_VECTOR, ">0"})
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse3", "true"},
counts = {IRNode.ADD_REDUCTION_V, ">0"})
public int reductionAddSumOfArray() {
int res = 0;
@ -119,9 +120,9 @@ public class LoopReductionOpTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"sve", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"sve", "true", "avx2", "true"},
counts = {IRNode.LOAD_VECTOR, ">0"})
@IR(applyIfCPUFeatureOr = {"sve", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"sve", "true", "avx2", "true"},
counts = {IRNode.ADD_REDUCTION_V, ">0"})
public int reductionAddSumOfMultiple() {
int res = 0;
@ -178,7 +179,7 @@ public class LoopReductionOpTest extends VectorizationTestRunner {
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
@IR(applyIfCPUFeatureOr = {"sse2", "true"},
@IR(applyIfCPUFeatureOr = {"avx2", "true"},
counts = {IRNode.ADD_REDUCTION_V, ">0"})
public long reductionWithNonReductionDifferentSizes() {
long res = 0L;

View File

@ -97,7 +97,7 @@ public class MultipleLoopsTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
public int[] nestedLoopOuterNonCounted() {
int i = 1;
@ -113,7 +113,7 @@ public class MultipleLoopsTest extends VectorizationTestRunner {
}
@Test
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse2", "true"},
@IR(applyIfCPUFeatureOr = {"asimd", "true", "sse4_1", "true"},
counts = {IRNode.STORE_VECTOR, ">0"})
public int[] nestedLoopIndexCompute() {
int[] res = new int[SIZE];