testsuite, aarch64: Mark tests as needing ifunc support.

Message ID 20260804092008.92576-1-iain@sandoe.co.uk
State Committed
Delegated to: Alice Carlotti
Headers
Series testsuite, aarch64: Mark tests as needing ifunc support. |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_gcc_build--master-arm success Build passed

Commit Message

Iain Sandoe Aug. 4, 2026, 9:19 a.m. UTC
  Tested on aarch64-linux, aarch64-darwin, OK for trunk?
thanks,
Iain

--- 8< ---

Not all targets support ifuncs, so gate the tests on availability.

gcc/testsuite/ChangeLog:

	* g++.target/aarch64/mv-symbols10.C: Require ifunc support.
	* g++.target/aarch64/mv-symbols11.C: Likewise.
	* g++.target/aarch64/mv-symbols12.C: Likewise.
	* g++.target/aarch64/mv-symbols13.C: Likewise.
	* g++.target/aarch64/mv-symbols6.C: Likewise.
	* g++.target/aarch64/mv-symbols7.C: Likewise.
	* g++.target/aarch64/mv-symbols9.C: Likewise.
	* gcc.target/aarch64/mv-1.c: Likewise.
	* gcc.target/aarch64/mv-error8.c: Likewise.
	* gcc.target/aarch64/mv-symbols1.c: Likewise.
	* gcc.target/aarch64/mv-symbols10.c: Likewise.
	* gcc.target/aarch64/mv-symbols11.c: Likewise.
	* gcc.target/aarch64/mv-symbols12.c: Likewise.
	* gcc.target/aarch64/mv-symbols13.c: Likewise.
	* gcc.target/aarch64/mv-symbols14.c: Likewise.
	* gcc.target/aarch64/mv-symbols2.c: Likewise.
	* gcc.target/aarch64/mv-symbols3.c: Likewise.
	* gcc.target/aarch64/mv-symbols4.c: Likewise.
	* gcc.target/aarch64/mv-symbols5.c: Likewise.
	* gcc.target/aarch64/mv-symbols6.c: Likewise.
	* gcc.target/aarch64/mv-symbols7.c: Likewise.
	* gcc.target/aarch64/mv-symbols8.c: Likewise.
	* gcc.target/aarch64/mv-symbols9.c: Likewise.
	* gcc.target/aarch64/mvc-symbols1.c: Likewise.
	* gcc.target/aarch64/mvc-symbols2.c: Likewise.
	* gcc.target/aarch64/mvc-symbols3.c: Likewise.
	* gcc.target/aarch64/mvc-symbols4.c: Likewise.
	* gcc.target/aarch64/pr124167.c: Likewise.

Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>
---
 gcc/testsuite/g++.target/aarch64/mv-symbols10.C | 1 +
 gcc/testsuite/g++.target/aarch64/mv-symbols11.C | 1 +
 gcc/testsuite/g++.target/aarch64/mv-symbols12.C | 1 +
 gcc/testsuite/g++.target/aarch64/mv-symbols13.C | 1 +
 gcc/testsuite/g++.target/aarch64/mv-symbols6.C  | 1 +
 gcc/testsuite/g++.target/aarch64/mv-symbols7.C  | 1 +
 gcc/testsuite/g++.target/aarch64/mv-symbols9.C  | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-1.c         | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-error8.c    | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-symbols1.c  | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-symbols10.c | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-symbols11.c | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-symbols12.c | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-symbols13.c | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-symbols14.c | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-symbols2.c  | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-symbols3.c  | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-symbols4.c  | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-symbols5.c  | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-symbols6.c  | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-symbols7.c  | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-symbols8.c  | 1 +
 gcc/testsuite/gcc.target/aarch64/mv-symbols9.c  | 1 +
 gcc/testsuite/gcc.target/aarch64/mvc-symbols1.c | 1 +
 gcc/testsuite/gcc.target/aarch64/mvc-symbols2.c | 1 +
 gcc/testsuite/gcc.target/aarch64/mvc-symbols3.c | 1 +
 gcc/testsuite/gcc.target/aarch64/mvc-symbols4.c | 1 +
 gcc/testsuite/gcc.target/aarch64/pr124167.c     | 1 +
 28 files changed, 28 insertions(+)
  

Comments

Alice Carlotti Aug. 4, 2026, 7:19 p.m. UTC | #1
On Tue, Aug 04, 2026 at 10:19:54AM +0100, Iain Sandoe wrote:
> Tested on aarch64-linux, aarch64-darwin, OK for trunk?
> thanks,
> Iain

OK, thanks
Alice

> 
> --- 8< ---
> 
> Not all targets support ifuncs, so gate the tests on availability.
> 
> gcc/testsuite/ChangeLog:
> 
> 	* g++.target/aarch64/mv-symbols10.C: Require ifunc support.
> 	* g++.target/aarch64/mv-symbols11.C: Likewise.
> 	* g++.target/aarch64/mv-symbols12.C: Likewise.
> 	* g++.target/aarch64/mv-symbols13.C: Likewise.
> 	* g++.target/aarch64/mv-symbols6.C: Likewise.
> 	* g++.target/aarch64/mv-symbols7.C: Likewise.
> 	* g++.target/aarch64/mv-symbols9.C: Likewise.
> 	* gcc.target/aarch64/mv-1.c: Likewise.
> 	* gcc.target/aarch64/mv-error8.c: Likewise.
> 	* gcc.target/aarch64/mv-symbols1.c: Likewise.
> 	* gcc.target/aarch64/mv-symbols10.c: Likewise.
> 	* gcc.target/aarch64/mv-symbols11.c: Likewise.
> 	* gcc.target/aarch64/mv-symbols12.c: Likewise.
> 	* gcc.target/aarch64/mv-symbols13.c: Likewise.
> 	* gcc.target/aarch64/mv-symbols14.c: Likewise.
> 	* gcc.target/aarch64/mv-symbols2.c: Likewise.
> 	* gcc.target/aarch64/mv-symbols3.c: Likewise.
> 	* gcc.target/aarch64/mv-symbols4.c: Likewise.
> 	* gcc.target/aarch64/mv-symbols5.c: Likewise.
> 	* gcc.target/aarch64/mv-symbols6.c: Likewise.
> 	* gcc.target/aarch64/mv-symbols7.c: Likewise.
> 	* gcc.target/aarch64/mv-symbols8.c: Likewise.
> 	* gcc.target/aarch64/mv-symbols9.c: Likewise.
> 	* gcc.target/aarch64/mvc-symbols1.c: Likewise.
> 	* gcc.target/aarch64/mvc-symbols2.c: Likewise.
> 	* gcc.target/aarch64/mvc-symbols3.c: Likewise.
> 	* gcc.target/aarch64/mvc-symbols4.c: Likewise.
> 	* gcc.target/aarch64/pr124167.c: Likewise.
> 
> Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>
> ---
>  gcc/testsuite/g++.target/aarch64/mv-symbols10.C | 1 +
>  gcc/testsuite/g++.target/aarch64/mv-symbols11.C | 1 +
>  gcc/testsuite/g++.target/aarch64/mv-symbols12.C | 1 +
>  gcc/testsuite/g++.target/aarch64/mv-symbols13.C | 1 +
>  gcc/testsuite/g++.target/aarch64/mv-symbols6.C  | 1 +
>  gcc/testsuite/g++.target/aarch64/mv-symbols7.C  | 1 +
>  gcc/testsuite/g++.target/aarch64/mv-symbols9.C  | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-1.c         | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-error8.c    | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-symbols1.c  | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-symbols10.c | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-symbols11.c | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-symbols12.c | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-symbols13.c | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-symbols14.c | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-symbols2.c  | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-symbols3.c  | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-symbols4.c  | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-symbols5.c  | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-symbols6.c  | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-symbols7.c  | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-symbols8.c  | 1 +
>  gcc/testsuite/gcc.target/aarch64/mv-symbols9.c  | 1 +
>  gcc/testsuite/gcc.target/aarch64/mvc-symbols1.c | 1 +
>  gcc/testsuite/gcc.target/aarch64/mvc-symbols2.c | 1 +
>  gcc/testsuite/gcc.target/aarch64/mvc-symbols3.c | 1 +
>  gcc/testsuite/gcc.target/aarch64/mvc-symbols4.c | 1 +
>  gcc/testsuite/gcc.target/aarch64/pr124167.c     | 1 +
>  28 files changed, 28 insertions(+)
> 
> diff --git a/gcc/testsuite/g++.target/aarch64/mv-symbols10.C b/gcc/testsuite/g++.target/aarch64/mv-symbols10.C
> index b83e00be94d..d68082c9c97 100644
> --- a/gcc/testsuite/g++.target/aarch64/mv-symbols10.C
> +++ b/gcc/testsuite/g++.target/aarch64/mv-symbols10.C
> @@ -1,4 +1,5 @@
>  /* { dg-do compile } */
> +/* { dg-require-ifunc "" } */
>  /* { dg-options "-O0" } */
>  
>  __attribute__ ((target_version ("default"))) void
> diff --git a/gcc/testsuite/g++.target/aarch64/mv-symbols11.C b/gcc/testsuite/g++.target/aarch64/mv-symbols11.C
> index 19ab82de705..dfe0d92e9ed 100644
> --- a/gcc/testsuite/g++.target/aarch64/mv-symbols11.C
> +++ b/gcc/testsuite/g++.target/aarch64/mv-symbols11.C
> @@ -1,4 +1,5 @@
>  /* { dg-do compile } */
> +/* { dg-require-ifunc "" } */
>  /* { dg-options "-O0" } */
>  
>  __attribute__ ((target_version ("default"))) int
> diff --git a/gcc/testsuite/g++.target/aarch64/mv-symbols12.C b/gcc/testsuite/g++.target/aarch64/mv-symbols12.C
> index a5e54bbf041..121899f452e 100644
> --- a/gcc/testsuite/g++.target/aarch64/mv-symbols12.C
> +++ b/gcc/testsuite/g++.target/aarch64/mv-symbols12.C
> @@ -1,4 +1,5 @@
>  /* { dg-do compile } */
> +/* { dg-require-ifunc "" } */
>  /* { dg-options "-O0" } */
>  
>  int foo () {
> diff --git a/gcc/testsuite/g++.target/aarch64/mv-symbols13.C b/gcc/testsuite/g++.target/aarch64/mv-symbols13.C
> index 01b8b6c768b..9de4d4005fe 100644
> --- a/gcc/testsuite/g++.target/aarch64/mv-symbols13.C
> +++ b/gcc/testsuite/g++.target/aarch64/mv-symbols13.C
> @@ -1,4 +1,5 @@
>  /* { dg-do compile } */
> +/* { dg-require-ifunc "" } */
>  /* { dg-options "-O0" } */
>  
>  int foo () {
> diff --git a/gcc/testsuite/g++.target/aarch64/mv-symbols6.C b/gcc/testsuite/g++.target/aarch64/mv-symbols6.C
> index 7e54158f1c8..d33291b0f43 100644
> --- a/gcc/testsuite/g++.target/aarch64/mv-symbols6.C
> +++ b/gcc/testsuite/g++.target/aarch64/mv-symbols6.C
> @@ -1,4 +1,5 @@
>  /* { dg-do compile } */
> +/* { dg-require-ifunc "" } */
>  /* { dg-options "-O0" } */
>  
>  __attribute__ ((target_version ("default"))) int
> diff --git a/gcc/testsuite/g++.target/aarch64/mv-symbols7.C b/gcc/testsuite/g++.target/aarch64/mv-symbols7.C
> index a312caf651e..e60cdbf731a 100644
> --- a/gcc/testsuite/g++.target/aarch64/mv-symbols7.C
> +++ b/gcc/testsuite/g++.target/aarch64/mv-symbols7.C
> @@ -1,4 +1,5 @@
>  /* { dg-do compile } */
> +/* { dg-require-ifunc "" } */
>  /* { dg-options "-O0" } */
>  
>  __attribute__ ((target_version ("dotprod"))) int
> diff --git a/gcc/testsuite/g++.target/aarch64/mv-symbols9.C b/gcc/testsuite/g++.target/aarch64/mv-symbols9.C
> index e46d9db2649..19181b8e640 100644
> --- a/gcc/testsuite/g++.target/aarch64/mv-symbols9.C
> +++ b/gcc/testsuite/g++.target/aarch64/mv-symbols9.C
> @@ -1,4 +1,5 @@
>  /* { dg-do compile } */
> +/* { dg-require-ifunc "" } */
>  /* { dg-options "-O0" } */
>  
>  int
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-1.c b/gcc/testsuite/gcc.target/aarch64/mv-1.c
> index 6f095ecd7a7..eab320465b2 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-1.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-1.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  __attribute__ ((target_version ("default"))) int
>  foo ()
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-error8.c b/gcc/testsuite/gcc.target/aarch64/mv-error8.c
> index 7599df189e4..a3a47a8988a 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-error8.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-error8.c
> @@ -1,4 +1,5 @@
>  /* { dg-do compile } */
> +/* { dg-require-ifunc "" } */
>  /* { dg-options "-O0" } */
>  
>  __attribute__ ((target_version ("default"))) int
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols1.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols1.c
> index 798227826e5..7549c58f3b6 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-symbols1.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols1.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  // Basic case of fmv correctness with all functions and use in one TU.
>  
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols10.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols10.c
> index d5256389d7b..0c41ccb33f7 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-symbols10.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols10.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  int
>  foo ();
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols11.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols11.c
> index fd3dc345a59..70fd995faca 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-symbols11.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols11.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  // Check that types can be combined
>  
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols12.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols12.c
> index 1a0b667eb5f..1a9c6a70653 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-symbols12.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols12.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  __attribute__ ((target_version ("default"))) int
>  foo () { return 1; }
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols13.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols13.c
> index 308dace64a7..7c520696c28 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-symbols13.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols13.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  __attribute__ ((target_version ("default"))) int
>  foo ();
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols14.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols14.c
> index d1af69fe31d..f7feaecbd8f 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-symbols14.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols14.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  int foo ();
>  
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols2.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols2.c
> index a8732caf214..14662dcfaa9 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-symbols2.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols2.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  // FMV correctness with definitions but no call
>  
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols3.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols3.c
> index 962bae93577..21e75d6f3d1 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-symbols3.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols3.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  // FMV correctness with declarations but no implementation
>  
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols4.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols4.c
> index a476800b2c5..bddb0e7bf3e 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-symbols4.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols4.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  // FMV correctness with a default implementation and declarations of other
>  // versions
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols5.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols5.c
> index 4df20009f79..d0b70bce744 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-symbols5.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols5.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  // FMV correctness with default declaration, and implementations of other
>  // versions.
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols6.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols6.c
> index cbf8bcaf8e1..128d479e7e6 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-symbols6.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols6.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  __attribute__ ((target_version ("default"))) int
>  foo ()
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols7.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols7.c
> index 2ea4d2ebf0f..d2b3c257eea 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-symbols7.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols7.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  __attribute__ ((target_version ("dotprod"))) int
>  foo ();
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols8.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols8.c
> index 3e3eaf21aa9..32229749ea0 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-symbols8.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols8.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  __attribute__ ((target_version ("dotprod"))) int
>  foo ();
> diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols9.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols9.c
> index 8e0864f1663..ac5dc5c3373 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mv-symbols9.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols9.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  __attribute__ ((target_version ("dotprod"))) int
>  foo ();
> diff --git a/gcc/testsuite/gcc.target/aarch64/mvc-symbols1.c b/gcc/testsuite/gcc.target/aarch64/mvc-symbols1.c
> index 3ad15e5bb73..cd3150b7033 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mvc-symbols1.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mvc-symbols1.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  __attribute__ ((target_clones ("default", "dotprod", "sve+sve2"))) int
>  foo ()
> diff --git a/gcc/testsuite/gcc.target/aarch64/mvc-symbols2.c b/gcc/testsuite/gcc.target/aarch64/mvc-symbols2.c
> index 78385ed904b..b7b7a42f978 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mvc-symbols2.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mvc-symbols2.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  __attribute__ ((target_clones ("default", "dotprod", "sve+sve2"))) int
>  foo ()
> diff --git a/gcc/testsuite/gcc.target/aarch64/mvc-symbols3.c b/gcc/testsuite/gcc.target/aarch64/mvc-symbols3.c
> index 1cbe3fd0850..4c9f7443adc 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mvc-symbols3.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mvc-symbols3.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  __attribute__ ((target_clones ("default", "dotprod", "sve+sve2"))) int
>  foo ();
> diff --git a/gcc/testsuite/gcc.target/aarch64/mvc-symbols4.c b/gcc/testsuite/gcc.target/aarch64/mvc-symbols4.c
> index abaf60f91c3..adb6c9fc8c6 100644
> --- a/gcc/testsuite/gcc.target/aarch64/mvc-symbols4.c
> +++ b/gcc/testsuite/gcc.target/aarch64/mvc-symbols4.c
> @@ -1,5 +1,6 @@
>  /* { dg-do compile } */
>  /* { dg-options "-O0" } */
> +/* { dg-require-ifunc "" } */
>  
>  __attribute__ ((target_clones ("default", "dotprod", "sve+sve2"))) int
>  foo ();
> diff --git a/gcc/testsuite/gcc.target/aarch64/pr124167.c b/gcc/testsuite/gcc.target/aarch64/pr124167.c
> index 4ba94b0fe9a..c09018151bf 100644
> --- a/gcc/testsuite/gcc.target/aarch64/pr124167.c
> +++ b/gcc/testsuite/gcc.target/aarch64/pr124167.c
> @@ -1,4 +1,5 @@
>  /* { dg-do compile } */
> +/* { dg-require-ifunc "" } */
>  
>  /* Check there is no ICE.  */
>  
> -- 
> 2.50.1 (Apple Git-155)
>
  

Patch

diff --git a/gcc/testsuite/g++.target/aarch64/mv-symbols10.C b/gcc/testsuite/g++.target/aarch64/mv-symbols10.C
index b83e00be94d..d68082c9c97 100644
--- a/gcc/testsuite/g++.target/aarch64/mv-symbols10.C
+++ b/gcc/testsuite/g++.target/aarch64/mv-symbols10.C
@@ -1,4 +1,5 @@ 
 /* { dg-do compile } */
+/* { dg-require-ifunc "" } */
 /* { dg-options "-O0" } */
 
 __attribute__ ((target_version ("default"))) void
diff --git a/gcc/testsuite/g++.target/aarch64/mv-symbols11.C b/gcc/testsuite/g++.target/aarch64/mv-symbols11.C
index 19ab82de705..dfe0d92e9ed 100644
--- a/gcc/testsuite/g++.target/aarch64/mv-symbols11.C
+++ b/gcc/testsuite/g++.target/aarch64/mv-symbols11.C
@@ -1,4 +1,5 @@ 
 /* { dg-do compile } */
+/* { dg-require-ifunc "" } */
 /* { dg-options "-O0" } */
 
 __attribute__ ((target_version ("default"))) int
diff --git a/gcc/testsuite/g++.target/aarch64/mv-symbols12.C b/gcc/testsuite/g++.target/aarch64/mv-symbols12.C
index a5e54bbf041..121899f452e 100644
--- a/gcc/testsuite/g++.target/aarch64/mv-symbols12.C
+++ b/gcc/testsuite/g++.target/aarch64/mv-symbols12.C
@@ -1,4 +1,5 @@ 
 /* { dg-do compile } */
+/* { dg-require-ifunc "" } */
 /* { dg-options "-O0" } */
 
 int foo () {
diff --git a/gcc/testsuite/g++.target/aarch64/mv-symbols13.C b/gcc/testsuite/g++.target/aarch64/mv-symbols13.C
index 01b8b6c768b..9de4d4005fe 100644
--- a/gcc/testsuite/g++.target/aarch64/mv-symbols13.C
+++ b/gcc/testsuite/g++.target/aarch64/mv-symbols13.C
@@ -1,4 +1,5 @@ 
 /* { dg-do compile } */
+/* { dg-require-ifunc "" } */
 /* { dg-options "-O0" } */
 
 int foo () {
diff --git a/gcc/testsuite/g++.target/aarch64/mv-symbols6.C b/gcc/testsuite/g++.target/aarch64/mv-symbols6.C
index 7e54158f1c8..d33291b0f43 100644
--- a/gcc/testsuite/g++.target/aarch64/mv-symbols6.C
+++ b/gcc/testsuite/g++.target/aarch64/mv-symbols6.C
@@ -1,4 +1,5 @@ 
 /* { dg-do compile } */
+/* { dg-require-ifunc "" } */
 /* { dg-options "-O0" } */
 
 __attribute__ ((target_version ("default"))) int
diff --git a/gcc/testsuite/g++.target/aarch64/mv-symbols7.C b/gcc/testsuite/g++.target/aarch64/mv-symbols7.C
index a312caf651e..e60cdbf731a 100644
--- a/gcc/testsuite/g++.target/aarch64/mv-symbols7.C
+++ b/gcc/testsuite/g++.target/aarch64/mv-symbols7.C
@@ -1,4 +1,5 @@ 
 /* { dg-do compile } */
+/* { dg-require-ifunc "" } */
 /* { dg-options "-O0" } */
 
 __attribute__ ((target_version ("dotprod"))) int
diff --git a/gcc/testsuite/g++.target/aarch64/mv-symbols9.C b/gcc/testsuite/g++.target/aarch64/mv-symbols9.C
index e46d9db2649..19181b8e640 100644
--- a/gcc/testsuite/g++.target/aarch64/mv-symbols9.C
+++ b/gcc/testsuite/g++.target/aarch64/mv-symbols9.C
@@ -1,4 +1,5 @@ 
 /* { dg-do compile } */
+/* { dg-require-ifunc "" } */
 /* { dg-options "-O0" } */
 
 int
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-1.c b/gcc/testsuite/gcc.target/aarch64/mv-1.c
index 6f095ecd7a7..eab320465b2 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-1.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-1.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 __attribute__ ((target_version ("default"))) int
 foo ()
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-error8.c b/gcc/testsuite/gcc.target/aarch64/mv-error8.c
index 7599df189e4..a3a47a8988a 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-error8.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-error8.c
@@ -1,4 +1,5 @@ 
 /* { dg-do compile } */
+/* { dg-require-ifunc "" } */
 /* { dg-options "-O0" } */
 
 __attribute__ ((target_version ("default"))) int
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols1.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols1.c
index 798227826e5..7549c58f3b6 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-symbols1.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols1.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 // Basic case of fmv correctness with all functions and use in one TU.
 
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols10.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols10.c
index d5256389d7b..0c41ccb33f7 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-symbols10.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols10.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 int
 foo ();
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols11.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols11.c
index fd3dc345a59..70fd995faca 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-symbols11.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols11.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 // Check that types can be combined
 
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols12.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols12.c
index 1a0b667eb5f..1a9c6a70653 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-symbols12.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols12.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 __attribute__ ((target_version ("default"))) int
 foo () { return 1; }
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols13.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols13.c
index 308dace64a7..7c520696c28 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-symbols13.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols13.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 __attribute__ ((target_version ("default"))) int
 foo ();
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols14.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols14.c
index d1af69fe31d..f7feaecbd8f 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-symbols14.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols14.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 int foo ();
 
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols2.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols2.c
index a8732caf214..14662dcfaa9 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-symbols2.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols2.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 // FMV correctness with definitions but no call
 
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols3.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols3.c
index 962bae93577..21e75d6f3d1 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-symbols3.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols3.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 // FMV correctness with declarations but no implementation
 
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols4.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols4.c
index a476800b2c5..bddb0e7bf3e 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-symbols4.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols4.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 // FMV correctness with a default implementation and declarations of other
 // versions
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols5.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols5.c
index 4df20009f79..d0b70bce744 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-symbols5.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols5.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 // FMV correctness with default declaration, and implementations of other
 // versions.
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols6.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols6.c
index cbf8bcaf8e1..128d479e7e6 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-symbols6.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols6.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 __attribute__ ((target_version ("default"))) int
 foo ()
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols7.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols7.c
index 2ea4d2ebf0f..d2b3c257eea 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-symbols7.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols7.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 __attribute__ ((target_version ("dotprod"))) int
 foo ();
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols8.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols8.c
index 3e3eaf21aa9..32229749ea0 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-symbols8.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols8.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 __attribute__ ((target_version ("dotprod"))) int
 foo ();
diff --git a/gcc/testsuite/gcc.target/aarch64/mv-symbols9.c b/gcc/testsuite/gcc.target/aarch64/mv-symbols9.c
index 8e0864f1663..ac5dc5c3373 100644
--- a/gcc/testsuite/gcc.target/aarch64/mv-symbols9.c
+++ b/gcc/testsuite/gcc.target/aarch64/mv-symbols9.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 __attribute__ ((target_version ("dotprod"))) int
 foo ();
diff --git a/gcc/testsuite/gcc.target/aarch64/mvc-symbols1.c b/gcc/testsuite/gcc.target/aarch64/mvc-symbols1.c
index 3ad15e5bb73..cd3150b7033 100644
--- a/gcc/testsuite/gcc.target/aarch64/mvc-symbols1.c
+++ b/gcc/testsuite/gcc.target/aarch64/mvc-symbols1.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 __attribute__ ((target_clones ("default", "dotprod", "sve+sve2"))) int
 foo ()
diff --git a/gcc/testsuite/gcc.target/aarch64/mvc-symbols2.c b/gcc/testsuite/gcc.target/aarch64/mvc-symbols2.c
index 78385ed904b..b7b7a42f978 100644
--- a/gcc/testsuite/gcc.target/aarch64/mvc-symbols2.c
+++ b/gcc/testsuite/gcc.target/aarch64/mvc-symbols2.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 __attribute__ ((target_clones ("default", "dotprod", "sve+sve2"))) int
 foo ()
diff --git a/gcc/testsuite/gcc.target/aarch64/mvc-symbols3.c b/gcc/testsuite/gcc.target/aarch64/mvc-symbols3.c
index 1cbe3fd0850..4c9f7443adc 100644
--- a/gcc/testsuite/gcc.target/aarch64/mvc-symbols3.c
+++ b/gcc/testsuite/gcc.target/aarch64/mvc-symbols3.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 __attribute__ ((target_clones ("default", "dotprod", "sve+sve2"))) int
 foo ();
diff --git a/gcc/testsuite/gcc.target/aarch64/mvc-symbols4.c b/gcc/testsuite/gcc.target/aarch64/mvc-symbols4.c
index abaf60f91c3..adb6c9fc8c6 100644
--- a/gcc/testsuite/gcc.target/aarch64/mvc-symbols4.c
+++ b/gcc/testsuite/gcc.target/aarch64/mvc-symbols4.c
@@ -1,5 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O0" } */
+/* { dg-require-ifunc "" } */
 
 __attribute__ ((target_clones ("default", "dotprod", "sve+sve2"))) int
 foo ();
diff --git a/gcc/testsuite/gcc.target/aarch64/pr124167.c b/gcc/testsuite/gcc.target/aarch64/pr124167.c
index 4ba94b0fe9a..c09018151bf 100644
--- a/gcc/testsuite/gcc.target/aarch64/pr124167.c
+++ b/gcc/testsuite/gcc.target/aarch64/pr124167.c
@@ -1,4 +1,5 @@ 
 /* { dg-do compile } */
+/* { dg-require-ifunc "" } */
 
 /* Check there is no ICE.  */