8299528: IR test: TestEor3AArch64.java fails on aarch64

Reviewed-by: thartmann, chagedorn
This commit is contained in:
Bhavana Kilambi 2023-01-06 10:04:04 +00:00 committed by Nick Gasson
parent 284c94e20d
commit 136f5db03d
2 changed files with 16 additions and 6 deletions

View File

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2021, 2022, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2021, 2023, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
@ -1199,6 +1199,16 @@ public class IRNode {
beforeMatchingNameRegex(XOR_V_MASK, "XorVMask"); beforeMatchingNameRegex(XOR_V_MASK, "XorVMask");
} }
public static final String XOR3_NEON = PREFIX + "XOR3_NEON" + POSTFIX;
static {
machOnlyNameRegex(XOR3_NEON, "veor3_neon");
}
public static final String XOR3_SVE = PREFIX + "XOR3_SVE" + POSTFIX;
static {
machOnlyNameRegex(XOR3_SVE, "veor3_sve");
}
/* /*
* Utility methods to set up IR_NODE_MAPPINGS. * Utility methods to set up IR_NODE_MAPPINGS.
*/ */

View File

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2022, Arm Limited. All rights reserved. * Copyright (c) 2022, 2023, Arm Limited. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
@ -78,8 +78,8 @@ public class TestEor3AArch64 {
// Test for eor3 Neon and SVE2 instruction for integers // Test for eor3 Neon and SVE2 instruction for integers
@Test @Test
@IR(counts = {"veor3_neon", "> 0"}, applyIf = {"MaxVectorSize", "16"}, applyIfCPUFeature = {"sha3", "true"}) @IR(counts = {IRNode.XOR3_NEON, "> 0"}, applyIf = {"MaxVectorSize", "16"}, applyIfCPUFeature = {"sha3", "true"})
@IR(counts = {"veor3_sve", "> 0"}, applyIfAnd = {"UseSVE", "2", "MaxVectorSize", "> 16"}) @IR(counts = {IRNode.XOR3_SVE, "> 0"}, applyIfAnd = {"UseSVE", "2", "MaxVectorSize", "> 16"})
public static void testIntEor3() { public static void testIntEor3() {
for (int i = 0; i < LENGTH; i++) { for (int i = 0; i < LENGTH; i++) {
ir[i] = ia[i] ^ ib[i] ^ ic[i]; ir[i] = ia[i] ^ ib[i] ^ ic[i];
@ -96,8 +96,8 @@ public class TestEor3AArch64 {
// Test for eor3 Neon and SVE2 instruction for longs // Test for eor3 Neon and SVE2 instruction for longs
@Test @Test
@IR(counts = {"veor3_neon", "> 0"}, applyIf = {"MaxVectorSize", "16"}, applyIfCPUFeature = {"sha3", "true"}) @IR(counts = {IRNode.XOR3_NEON, "> 0"}, applyIf = {"MaxVectorSize", "16"}, applyIfCPUFeature = {"sha3", "true"})
@IR(counts = {"veor3_sve", "> 0"}, applyIfAnd = {"UseSVE", "2", "MaxVectorSize", "> 16"}) @IR(counts = {IRNode.XOR3_SVE, "> 0"}, applyIfAnd = {"UseSVE", "2", "MaxVectorSize", "> 16"})
public static void testLongEor3() { public static void testLongEor3() {
for (int i = 0; i < LENGTH; i++) { for (int i = 0; i < LENGTH; i++) {
lr[i] = la[i] ^ lb[i] ^ lc[i]; lr[i] = la[i] ^ lb[i] ^ lc[i];