[gcc r15-1371] [APX ZU] Fix test for target-support check
Kong Lingling
konglin1@gcc.gnu.org
Mon Jun 17 08:18:39 GMT 2024
https://gcc.gnu.org/g:4fbaac1f089f2236b5b1e79e18baba05239ad3b1
commit r15-1371-g4fbaac1f089f2236b5b1e79e18baba05239ad3b1
Author: Lingling Kong <lingling.kong@intel.com>
Date: Mon Jun 17 16:11:09 2024 +0800
[APX ZU] Fix test for target-support check
gcc/testsuite/ChangeLog:
* gcc.target/i386/apx-zu-1.c: Add attribute for noinline,
and target apx.
* gcc.target/i386/apx-zu-2.c: Add target-support check.
Diff:
---
gcc/testsuite/gcc.target/i386/apx-zu-1.c | 6 ++++++
gcc/testsuite/gcc.target/i386/apx-zu-2.c | 3 +++
2 files changed, 9 insertions(+)
diff --git a/gcc/testsuite/gcc.target/i386/apx-zu-1.c b/gcc/testsuite/gcc.target/i386/apx-zu-1.c
index 927a87673a7a..bc0e7fbb4dd6 100644
--- a/gcc/testsuite/gcc.target/i386/apx-zu-1.c
+++ b/gcc/testsuite/gcc.target/i386/apx-zu-1.c
@@ -9,26 +9,32 @@
/* { dg-final { scan-assembler-times "setzue" 1} } */
/* { dg-final { scan-assembler-times "setzuge" 1} } */
/* { dg-final { scan-assembler "imulzu"} } */
+
+__attribute__((noinline, noclone, target("apxf")))
long long foo0 (int a)
{
return a == 0 ? 0 : 1;
}
+__attribute__((noinline, noclone, target("apxf")))
long foo1 (int a, int b)
{
return a > b ? 0 : 1;
}
+__attribute__((noinline, noclone, target("apxf")))
int foo2 (int a, int b)
{
return a != b ? 0 : 1;
}
+__attribute__((noinline, noclone, target("apxf")))
short foo3 (int a, int b)
{
return a < b ? 0 : 1;
}
+__attribute__((noinline, noclone, target("apxf")))
unsigned long
f1(unsigned short x)
{
diff --git a/gcc/testsuite/gcc.target/i386/apx-zu-2.c b/gcc/testsuite/gcc.target/i386/apx-zu-2.c
index 3ee04495d98a..7585492bd7c2 100644
--- a/gcc/testsuite/gcc.target/i386/apx-zu-2.c
+++ b/gcc/testsuite/gcc.target/i386/apx-zu-2.c
@@ -5,6 +5,9 @@
int main(void)
{
+ if (!__builtin_cpu_supports ("apxf"))
+ return 0;
+
if (foo0 (0))
__builtin_abort ();
if (foo1 (3, 2))
More information about the Gcc-cvs
mailing list