[gcc r17-3877] testsuite, x86: Add dg-requires for assemble/run tests using AVX512.
Iain D Sandoe
iains@gcc.gnu.org
Wed Sep 2 19:42:23 GMT 2026
https://gcc.gnu.org/g:1c29f88ec83ff8eee17295fe7c77d61051bc1edc
commit r17-3877-g1c29f88ec83ff8eee17295fe7c77d61051bc1edc
Author: Iain Sandoe <iain@sandoe.co.uk>
Date: Tue Aug 11 17:30:08 2026 +0100
testsuite, x86: Add dg-requires for assemble/run tests using AVX512.
These fail on most Darwin targets because they require either assembler
or runtime support. For 32b Darwin add -mdynamic-no-pc to compile cases
to better match the codegen of ELF targets.
gcc/testsuite/ChangeLog:
* gcc.target/i386/avx2-shiftqihi-constant-2.c: Require AVX512.
* gcc.target/i386/pr104704-1.c: Likewise.
* gcc.target/i386/pr104704-4.c: Likewise.
* gcc.target/i386/pr110227.c: Likewise.
* gcc.target/i386/vect-pr115895.c: Likewise.
* gcc.target/i386/avx512fp16-pr101846.c: Add mdynmic-no-pic
for 32b Darwin.
* gcc.target/i386/pr101796-1.c: Likewise.
* gcc.target/i386/pr101846-2.c: Likewise.
Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>
Diff:
---
gcc/testsuite/gcc.target/i386/avx2-shiftqihi-constant-2.c | 1 +
gcc/testsuite/gcc.target/i386/avx512fp16-pr101846.c | 1 +
gcc/testsuite/gcc.target/i386/pr101796-1.c | 1 +
gcc/testsuite/gcc.target/i386/pr101846-2.c | 1 +
gcc/testsuite/gcc.target/i386/pr104704-1.c | 1 +
gcc/testsuite/gcc.target/i386/pr104704-4.c | 1 +
gcc/testsuite/gcc.target/i386/pr110227.c | 1 +
gcc/testsuite/gcc.target/i386/vect-pr115895.c | 1 +
8 files changed, 8 insertions(+)
diff --git a/gcc/testsuite/gcc.target/i386/avx2-shiftqihi-constant-2.c b/gcc/testsuite/gcc.target/i386/avx2-shiftqihi-constant-2.c
index 509d5a8d762b..72c699abfcd1 100644
--- a/gcc/testsuite/gcc.target/i386/avx2-shiftqihi-constant-2.c
+++ b/gcc/testsuite/gcc.target/i386/avx2-shiftqihi-constant-2.c
@@ -1,6 +1,7 @@
/* PR target/95524 */
/* { dg-do run } */
/* { dg-options "-O2 -mavx512bw -Wno-shift-count-overflow" } */
+/* { dg-require-effective-target avx512bw } */
#ifndef CHECK
#define CHECK "avx512bw-check.h"
diff --git a/gcc/testsuite/gcc.target/i386/avx512fp16-pr101846.c b/gcc/testsuite/gcc.target/i386/avx512fp16-pr101846.c
index 01571d21e3d0..c27d9a803635 100644
--- a/gcc/testsuite/gcc.target/i386/avx512fp16-pr101846.c
+++ b/gcc/testsuite/gcc.target/i386/avx512fp16-pr101846.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-mavx512fp16 -mavx512vl -O2" } */
/* { dg-additional-options "-fno-PIE" { target ia32 } } */
+/* { dg-additional-options "-mdynamic-no-pic" { target { *-*-darwin* && ia32 } } } */
/* { dg-final { scan-assembler-times "vpmovzxwd" "3" } } */
/* { dg-final { scan-assembler-times "vpmovdw" "3" } } */
diff --git a/gcc/testsuite/gcc.target/i386/pr101796-1.c b/gcc/testsuite/gcc.target/i386/pr101796-1.c
index 09532f9a43af..f73680c2af3c 100644
--- a/gcc/testsuite/gcc.target/i386/pr101796-1.c
+++ b/gcc/testsuite/gcc.target/i386/pr101796-1.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O2 -mavx512bw" } */
/* { dg-additional-options "-fno-PIE" { target ia32 } } */
+/* { dg-additional-options "-mdynamic-no-pic" { target { *-*-darwin* && ia32 } } } */
/* { dg-final {scan-assembler-times "vpsrlw\[ \\t\]" 1 } } */
/* { dg-final {scan-assembler-times "vpsllw\[ \\t\]" 1 } } */
/* { dg-final {scan-assembler-times "vpsraw\[ \\t\]" 1 } } */
diff --git a/gcc/testsuite/gcc.target/i386/pr101846-2.c b/gcc/testsuite/gcc.target/i386/pr101846-2.c
index bc2b466262df..53fd4a3b8268 100644
--- a/gcc/testsuite/gcc.target/i386/pr101846-2.c
+++ b/gcc/testsuite/gcc.target/i386/pr101846-2.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-mavx512vl -mavx512vbmi -O2" } */
/* { dg-additional-options "-fno-PIE" { target ia32 } } */
+/* { dg-additional-options "-mdynamic-no-pic" { target { *-*-darwin* && ia32 } } } */
/* { dg-final { scan-assembler-times "vpmovwb" "3" } } */
/* { dg-final { scan-assembler-times "vpmovdw" "3" } } */
/* { dg-final { scan-assembler-times "vpmovqd" "3" } } */
diff --git a/gcc/testsuite/gcc.target/i386/pr104704-1.c b/gcc/testsuite/gcc.target/i386/pr104704-1.c
index 28c499f4c44e..773086c0cf4f 100644
--- a/gcc/testsuite/gcc.target/i386/pr104704-1.c
+++ b/gcc/testsuite/gcc.target/i386/pr104704-1.c
@@ -1,5 +1,6 @@
/* { dg-do run { target { ! ia32 } } } */
/* { dg-options "-O2 -march=x86-64 -mavx512f" } */
+/* { dg-require-effective-target avx512f } */
#include <immintrin.h>
diff --git a/gcc/testsuite/gcc.target/i386/pr104704-4.c b/gcc/testsuite/gcc.target/i386/pr104704-4.c
index c97666293b75..7a8440a3ecab 100644
--- a/gcc/testsuite/gcc.target/i386/pr104704-4.c
+++ b/gcc/testsuite/gcc.target/i386/pr104704-4.c
@@ -1,5 +1,6 @@
/* { dg-do run { target { ! ia32 } } } */
/* { dg-options "-O2 -march=x86-64 -mavx512f" } */
+/* { dg-require-effective-target avx512f } */
#include <immintrin.h>
diff --git a/gcc/testsuite/gcc.target/i386/pr110227.c b/gcc/testsuite/gcc.target/i386/pr110227.c
index 9b59f5b6e49e..69485bff779f 100644
--- a/gcc/testsuite/gcc.target/i386/pr110227.c
+++ b/gcc/testsuite/gcc.target/i386/pr110227.c
@@ -1,5 +1,6 @@
/* { dg-do assemble { target { ! ia32 } } } */
/* { dg-options " -O2 -mavx512vl" } */
+/* { dg-require-effective-target avx512vl } */
#include <immintrin.h>
diff --git a/gcc/testsuite/gcc.target/i386/vect-pr115895.c b/gcc/testsuite/gcc.target/i386/vect-pr115895.c
index 2246c66d37ea..6aec4f415193 100644
--- a/gcc/testsuite/gcc.target/i386/vect-pr115895.c
+++ b/gcc/testsuite/gcc.target/i386/vect-pr115895.c
@@ -8,6 +8,7 @@
This testcase ensures that we do not crash due to that behaviour. */
/* { dg-do run } */
/* { dg-options "-std=gnu17 -O2 -ftree-vectorize -fno-vect-cost-model --param vect-partial-vector-usage=2 -mavx512bw -mprefer-vector-width=512" } */
+/* { dg-require-effective-target avx512bw } */
/* { dg-require-effective-target mmap } */
#include <sys/mman.h>
#include <stdio.h>
More information about the Gcc-cvs
mailing list