https://gcc.gnu.org/g:356d2b538e9168b0d69899703d165b6550cf3dfa
commit r17-3832-g356d2b538e9168b0d69899703d165b6550cf3dfa Author: Iain Sandoe <[email protected]> Date: Tue Sep 1 16:58:59 2026 +0100 testsuite, x86, Darwin: Do not try to assemble or run APX tests. Darwin's assembler does not have complete support. Also skip cases where the requested stack alignment is out of scope for the ABI. gcc/testsuite/ChangeLog: * gcc.target/i386/apx-broadcast.c: Skip for Darwin. * gcc.target/i386/apx-ccmp-2.c: Likewise. * gcc.target/i386/apx-legacy-insn-check-norex2-asm.c: Likewise. * gcc.target/i386/apx-ndd-2.c: Likewise. * gcc.target/i386/apx-ndd-no-seg-global-1.c: Likewise. * gcc.target/i386/apx-ndd-seg-1.c: Likewise. * gcc.target/i386/apx-ndd-seg-3.c: Likewise. * gcc.target/i386/apx-ndd-seg-4.c: Likewise. * gcc.target/i386/apx-ndd-seg-5.c: Likewise. * gcc.target/i386/apx-ndd-tls-1a.c: Likewise. * gcc.target/i386/apx-ndd-tls-1b.c: Likewise. * gcc.target/i386/apx-ndd-tls-2.c: Likewise. * gcc.target/i386/apx-ndd-tls-3.c: Likewise. * gcc.target/i386/apx-ndd-tls-4.c: Likewise. * gcc.target/i386/apx-ndd-x32-1.c: Likewise. * gcc.target/i386/apx-ndd-x32-2a.c: Likewise. * gcc.target/i386/apx-ndd-x32-2b.c: Likewise. * gcc.target/i386/apx-ndd-x32-2c.c: Likewise. * gcc.target/i386/apx-ndd-x32-2d.c: Likewise. * gcc.target/i386/apx-pr124892.c: Likewise. * gcc.target/i386/apx-push2pop2-2.c: Likewise. * gcc.target/i386/apx-zu-2.c: Likewise. * gcc.target/i386/pr126787.c: Likewise. * gcc.target/i386/apx-nf-2.c: Constrain asm scan to avoid .set. Signed-off-by: Iain Sandoe <[email protected]> Diff: --- gcc/testsuite/gcc.target/i386/apx-broadcast.c | 4 ++-- gcc/testsuite/gcc.target/i386/apx-ccmp-2.c | 2 +- gcc/testsuite/gcc.target/i386/apx-legacy-insn-check-norex2-asm.c | 2 +- gcc/testsuite/gcc.target/i386/apx-ndd-2.c | 2 +- gcc/testsuite/gcc.target/i386/apx-ndd-no-seg-global-1.c | 6 +++--- gcc/testsuite/gcc.target/i386/apx-ndd-seg-1.c | 6 +++--- gcc/testsuite/gcc.target/i386/apx-ndd-seg-3.c | 2 +- gcc/testsuite/gcc.target/i386/apx-ndd-seg-4.c | 2 +- gcc/testsuite/gcc.target/i386/apx-ndd-seg-5.c | 2 +- gcc/testsuite/gcc.target/i386/apx-ndd-tls-1a.c | 2 +- gcc/testsuite/gcc.target/i386/apx-ndd-tls-1b.c | 2 +- gcc/testsuite/gcc.target/i386/apx-ndd-tls-2.c | 2 +- gcc/testsuite/gcc.target/i386/apx-ndd-tls-3.c | 2 +- gcc/testsuite/gcc.target/i386/apx-ndd-tls-4.c | 2 +- gcc/testsuite/gcc.target/i386/apx-ndd-x32-1.c | 4 ++-- gcc/testsuite/gcc.target/i386/apx-ndd-x32-2a.c | 2 +- gcc/testsuite/gcc.target/i386/apx-ndd-x32-2b.c | 2 +- gcc/testsuite/gcc.target/i386/apx-ndd-x32-2c.c | 2 +- gcc/testsuite/gcc.target/i386/apx-ndd-x32-2d.c | 2 +- gcc/testsuite/gcc.target/i386/apx-nf-2.c | 2 +- gcc/testsuite/gcc.target/i386/apx-pr124892.c | 2 +- gcc/testsuite/gcc.target/i386/apx-push2pop2-2.c | 2 +- gcc/testsuite/gcc.target/i386/apx-zu-2.c | 2 +- gcc/testsuite/gcc.target/i386/pr126787.c | 2 +- 24 files changed, 30 insertions(+), 30 deletions(-) diff --git a/gcc/testsuite/gcc.target/i386/apx-broadcast.c b/gcc/testsuite/gcc.target/i386/apx-broadcast.c index 7678dcd4550b..394c4737eee9 100644 --- a/gcc/testsuite/gcc.target/i386/apx-broadcast.c +++ b/gcc/testsuite/gcc.target/i386/apx-broadcast.c @@ -1,11 +1,11 @@ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-options "-mavx512vl -mapxf -O2" } */ #include <stdint.h> #include <immintrin.h> void broadcast_avx2(int *sx, __m256i *coeff, __m128i *temp) { - + __m256i semp[8]; diff --git a/gcc/testsuite/gcc.target/i386/apx-ccmp-2.c b/gcc/testsuite/gcc.target/i386/apx-ccmp-2.c index 192c04587284..45e3b589e6f3 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ccmp-2.c +++ b/gcc/testsuite/gcc.target/i386/apx-ccmp-2.c @@ -1,4 +1,4 @@ -/* { dg-do run { target { ! ia32 } } } */ +/* { dg-do run { target { { ! ia32 } && { ! *-*-darwin* } } } } */ /* { dg-require-effective-target apxf } */ /* { dg-options "-O3" } */ diff --git a/gcc/testsuite/gcc.target/i386/apx-legacy-insn-check-norex2-asm.c b/gcc/testsuite/gcc.target/i386/apx-legacy-insn-check-norex2-asm.c index fb0f62e83e85..121715ac21f2 100644 --- a/gcc/testsuite/gcc.target/i386/apx-legacy-insn-check-norex2-asm.c +++ b/gcc/testsuite/gcc.target/i386/apx-legacy-insn-check-norex2-asm.c @@ -1,4 +1,4 @@ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-options "-O1 -mapxf -m64 -DDTYPE32" } */ #include "apx-legacy-insn-check-norex2.c" diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-2.c b/gcc/testsuite/gcc.target/i386/apx-ndd-2.c index 8ac28db74d75..225f2f967c31 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-2.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-2.c @@ -1,4 +1,4 @@ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-options "-mapxf -mtune-ctrl=enable_ndd_mem -O3 -w" } */ long a; diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-no-seg-global-1.c b/gcc/testsuite/gcc.target/i386/apx-ndd-no-seg-global-1.c index ad8178b9d65f..8007ab488176 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-no-seg-global-1.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-no-seg-global-1.c @@ -1,5 +1,5 @@ /* PR target/113711 */ -/* { dg-do compile { target { ! ia32 } } } */ +/* { dg-do compile { target { { ! ia32 } && { ! *-*-darwin* } } } } */ /* { dg-options "-mapxf -mtune-ctrl=enable_ndd_mem -O2" } */ #include <stdint.h> @@ -11,7 +11,7 @@ foo_##OP_NAME##_##TYPE (void) \ { \ TYPE b = foo_##OP_NAME##_##TYPE##_var OP IMM; \ return b; \ -} +} #define BAR(TYPE, UTYPE, OP_NAME, OP, IMM) \ extern UTYPE bar_##OP_NAME##_##TYPE##_var; \ @@ -20,7 +20,7 @@ bar_##OP_NAME##_##TYPE (void) \ { \ int64_t b = bar_##OP_NAME##_##TYPE##_var OP IMM; \ return b; \ -} +} FOO (char, add, +, 0x7) FOO (short, add, +, 0x2000) diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-seg-1.c b/gcc/testsuite/gcc.target/i386/apx-ndd-seg-1.c index b81720aa7133..cebff59b298c 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-seg-1.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-seg-1.c @@ -1,5 +1,5 @@ /* PR target/113711 */ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-options "-mapxf -mtune-ctrl=enable_ndd_mem -O2" } */ #include <stdint.h> @@ -10,7 +10,7 @@ foo_##OP_NAME##_##TYPE (void) \ { \ TYPE b = (*(TYPE __seg_fs *) 0) OP IMM; \ return b; \ -} +} #define BAR(TYPE, UTYPE, OP_NAME, OP, IMM) \ int64_t \ @@ -18,7 +18,7 @@ bar_##OP_NAME##_##TYPE (void) \ { \ int64_t b = (*(UTYPE __seg_fs *) 0) OP IMM; \ return b; \ -} +} FOO (char, add, +, 0x7) BAR (char, unsigned char, add, +, 0x7) diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-seg-3.c b/gcc/testsuite/gcc.target/i386/apx-ndd-seg-3.c index 20279d712416..d780b801297a 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-seg-3.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-seg-3.c @@ -1,5 +1,5 @@ /* PR target/113711 */ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-options "-mapxf -mtune-ctrl=enable_ndd_mem -O2" } */ typedef signed __int128 S; diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-seg-4.c b/gcc/testsuite/gcc.target/i386/apx-ndd-seg-4.c index b692bd973cfa..261663ab25ce 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-seg-4.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-seg-4.c @@ -1,5 +1,5 @@ /* PR target/113711 */ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-options "-mapxf -mtune-ctrl=enable_ndd_mem -O2" } */ unsigned __int128 diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-seg-5.c b/gcc/testsuite/gcc.target/i386/apx-ndd-seg-5.c index 1bffc4c57d44..9130d58f0c86 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-seg-5.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-seg-5.c @@ -1,5 +1,5 @@ /* PR target/113711 */ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-options "-mapxf -mtune-ctrl=enable_ndd_mem -O2" } */ #include <stdint.h> diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-tls-1a.c b/gcc/testsuite/gcc.target/i386/apx-ndd-tls-1a.c index 917a50c0c2b4..c80322540d65 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-tls-1a.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-tls-1a.c @@ -1,5 +1,5 @@ /* PR target/113733 */ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-require-effective-target tls } */ /* { dg-options "-std=gnu17 -mapxf -mtune-ctrl=enable_ndd_mem -O3 -w" } */ diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-tls-1b.c b/gcc/testsuite/gcc.target/i386/apx-ndd-tls-1b.c index 99e93a06f155..4a2fadbc5dce 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-tls-1b.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-tls-1b.c @@ -1,5 +1,5 @@ /* PR target/113733 */ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-require-effective-target tls } */ /* { dg-require-effective-target code_6_gottpoff_reloc } */ /* { dg-options "-save-temps -std=gnu17 -mapxf -mtune-ctrl=enable_ndd_mem -O3 -w" } */ diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-tls-2.c b/gcc/testsuite/gcc.target/i386/apx-ndd-tls-2.c index a0f9a0d48a7f..5c4de8ed826d 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-tls-2.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-tls-2.c @@ -1,5 +1,5 @@ /* PR target/113711 */ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-require-effective-target tls } */ /* { dg-options "-mapxf -mtune-ctrl=enable_ndd_mem -O2" } */ diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-tls-3.c b/gcc/testsuite/gcc.target/i386/apx-ndd-tls-3.c index 5d83d68933c8..df18017311fa 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-tls-3.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-tls-3.c @@ -1,5 +1,5 @@ /* PR target/113711 */ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-require-effective-target tls } */ /* { dg-options "-mapxf -mtune-ctrl=enable_ndd_mem -O2" } */ diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-tls-4.c b/gcc/testsuite/gcc.target/i386/apx-ndd-tls-4.c index fa826976d03f..e709119000f3 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-tls-4.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-tls-4.c @@ -1,4 +1,4 @@ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-require-effective-target tls } */ /* { dg-options "-mapxf -mtune-ctrl=enable_ndd_mem -O2" } */ diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-x32-1.c b/gcc/testsuite/gcc.target/i386/apx-ndd-x32-1.c index 26e8bd0e75ca..ba1fc0f8d93f 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-x32-1.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-x32-1.c @@ -1,5 +1,5 @@ /* PR target/113711 */ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-require-effective-target maybe_x32 } */ /* { dg-options "-mapxf -mtune-ctrl=enable_ndd_mem -O2 -mx32" } */ @@ -11,7 +11,7 @@ foo_##OP_NAME##_##TYPE (int off, TYPE *ptr) \ { \ TYPE b = ptr[off + 0x100] + IMM; \ return b; \ -} +} FOO (char, add, +, 0x7) FOO (short, add, +, 0x2000) diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2a.c b/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2a.c index e8c04da4fd1b..3825e274316f 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2a.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2a.c @@ -1,5 +1,5 @@ /* PR target/114696 */ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-require-effective-target maybe_x32 } */ /* { dg-options "-mapxf -mtune-ctrl=enable_ndd_mem -O0 -mx32" } */ diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2b.c b/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2b.c index c9c76a9fd44c..d0f896ec82c0 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2b.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2b.c @@ -1,5 +1,5 @@ /* PR target/114696 */ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-require-effective-target maybe_x32 } */ /* { dg-options "-mapxf -mtune-ctrl=enable_ndd_mem -O2 -mx32" } */ diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2c.c b/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2c.c index b42528e90a4f..497b50371853 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2c.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2c.c @@ -1,5 +1,5 @@ /* PR target/114696 */ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-require-effective-target maybe_x32 } */ /* { dg-options "-mapxf -mtune-ctrl=enable_ndd_mem -O0 -mx32 -maddress-mode=long" } */ diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2d.c b/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2d.c index b1f8688280f2..6ce4c8971219 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2d.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-x32-2d.c @@ -1,5 +1,5 @@ /* PR target/114696 */ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-require-effective-target maybe_x32 } */ /* { dg-options "-mapxf -mtune-ctrl=enable_ndd_mem -O2 -mx32 -maddress-mode=long" } */ diff --git a/gcc/testsuite/gcc.target/i386/apx-nf-2.c b/gcc/testsuite/gcc.target/i386/apx-nf-2.c index 8f5b8f6b2b7b..9ac23ae936d2 100644 --- a/gcc/testsuite/gcc.target/i386/apx-nf-2.c +++ b/gcc/testsuite/gcc.target/i386/apx-nf-2.c @@ -28,5 +28,5 @@ int foo2 (unsigned a, unsigned b, unsigned d, unsigned e, int *p) return c ? d : e; } -/* { dg-final { scan-assembler-not "set" } } */ +/* { dg-final { scan-assembler-not "set\[abceglnops\]" } } */ diff --git a/gcc/testsuite/gcc.target/i386/apx-pr124892.c b/gcc/testsuite/gcc.target/i386/apx-pr124892.c index d941d9e35568..26a2b7445d1d 100644 --- a/gcc/testsuite/gcc.target/i386/apx-pr124892.c +++ b/gcc/testsuite/gcc.target/i386/apx-pr124892.c @@ -1,5 +1,5 @@ /* PR target/124892 */ -/* { dg-do run { target { apxf && { lzcnt && { ! ia32 } } } } } */ +/* { dg-do run { target { apxf && { lzcnt && { { ! ia32 } && { ! *-*-darwin* } } } } } } */ /* { dg-options "-O2 -frename-registers" } */ [[gnu::noipa, gnu::target ("apxf"), gnu::target ("lzcnt")]] char diff --git a/gcc/testsuite/gcc.target/i386/apx-push2pop2-2.c b/gcc/testsuite/gcc.target/i386/apx-push2pop2-2.c index 975a6212b30d..887d10aeda65 100644 --- a/gcc/testsuite/gcc.target/i386/apx-push2pop2-2.c +++ b/gcc/testsuite/gcc.target/i386/apx-push2pop2-2.c @@ -1,4 +1,4 @@ -/* { dg-do compile { target { ! ia32 } } } */ +/* { dg-do compile { target { { ! ia32 } && { ! *-*-darwin* } } } } */ /* { dg-options "-O2 -mpreferred-stack-boundary=3 -mapx-features=push2pop2 -fomit-frame-pointer" } */ extern int bar (int); diff --git a/gcc/testsuite/gcc.target/i386/apx-zu-2.c b/gcc/testsuite/gcc.target/i386/apx-zu-2.c index 7585492bd7c2..68f74416c4fc 100644 --- a/gcc/testsuite/gcc.target/i386/apx-zu-2.c +++ b/gcc/testsuite/gcc.target/i386/apx-zu-2.c @@ -1,4 +1,4 @@ -/* { dg-do run { target { ! ia32 } } } */ +/* { dg-do run { target { { ! ia32 } && { ! *-*-darwin* } } } } */ /* { dg-require-effective-target apxf } */ /* { dg-options "-mapxf -march=x86-64 -O2" } */ #include "apx-zu-1.c" diff --git a/gcc/testsuite/gcc.target/i386/pr126787.c b/gcc/testsuite/gcc.target/i386/pr126787.c index a15928c139f7..0a9c9b7ad222 100644 --- a/gcc/testsuite/gcc.target/i386/pr126787.c +++ b/gcc/testsuite/gcc.target/i386/pr126787.c @@ -1,4 +1,4 @@ -/* { dg-do assemble { target { apxf && { ! ia32 } } } } */ +/* { dg-do assemble { target { apxf && { { ! ia32 } && { ! *-*-darwin* } } } } } */ /* { dg-options "-O2 -mapxf -mprefer-avx128 -funroll-loops --param max-unroll-times=4 -ffast-math -ftree-vectorize" } */ typedef float f4;
