public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH] [testsuite] add linkonly to dg-additional-sources [PR115295]
@ 2024-06-12  2:02 Alexandre Oliva
  2024-06-12  2:41 ` Andrew Pinski
  0 siblings, 1 reply; 3+ messages in thread
From: Alexandre Oliva @ 2024-06-12  2:02 UTC (permalink / raw)
  To: gcc-patches; +Cc: Rainer Orth, Mike Stump


The D testsuite shows it was a mistake to assume that
dg-additional-sources are never to be used for compilation tests.
Even if an output file is specified for compilation, extra module
files can be named and used in the compilation without being flagged
as errors.

Introduce a 'linkonly' flag for dg-additional-sources, and use it in
pr95401.cc, so that its additional sources get discarded when vector
tests downgrade to compile-only.

Regstrapped on x86_64-linux-gnu.  Also tested with 'dg-do compile' in
pr95401.cc.  Ok to install?


for  gcc/ChangeLog

	* doc/sourcebuild.texi (dg-additional-sources): Add linkonly.

for  gcc/testsuite/ChangeLog

	* g++.dg/vect/pr95401.cc: Add linkonly to dg-additional-sources.
	* lib/gcc-defs (additional_sources_omit_on_compile): New.
	(dg-additional-sources): Add to it on linkonly.
	(dg-additional-files-options): Omit select sources on compile.
---
 gcc/doc/sourcebuild.texi             |    9 +++++----
 gcc/testsuite/g++.dg/vect/pr95401.cc |    2 +-
 gcc/testsuite/lib/gcc-defs.exp       |   35 +++++++++++++++++++++++++++-------
 3 files changed, 34 insertions(+), 12 deletions(-)

diff --git a/gcc/doc/sourcebuild.texi b/gcc/doc/sourcebuild.texi
index e997dbec3334b..08c178db674c8 100644
--- a/gcc/doc/sourcebuild.texi
+++ b/gcc/doc/sourcebuild.texi
@@ -1320,15 +1320,16 @@ to @var{var_value} before execution of the program created by the test.
 Specify additional files, other than source files, that must be copied
 to the system where the compiler runs.
 
-@item @{ dg-additional-sources "@var{filelist}" [@{ target @var{selector} @}] @}
+@item @{ dg-additional-sources "@var{filelist}" [@{ \[linkonly\] \[target @var{selector}\] @}] @}
 Specify additional source files to appear in the compile line
 following the main test file.
 If the directive includes the optional @samp{@{ @var{selector} @}}
 then the additional sources are only added if the target system
 matches the @var{selector}.
-Additional sources are generally used only in @samp{link} and @samp{run}
-tests; they are reported as unsupported and discarded in other kinds of
-tests that direct the compiler to output to a single file.
+If @samp{linkonly} is specified, additional sources are used only in
+@samp{link} and @samp{run} tests; they are reported as unsupported and
+discarded in other kinds of tests that direct the compiler to output to
+a single file.
 @end table
 
 @subsubsection Add checks at the end of a test
diff --git a/gcc/testsuite/g++.dg/vect/pr95401.cc b/gcc/testsuite/g++.dg/vect/pr95401.cc
index 6a56dab095722..8b1be4f242521 100644
--- a/gcc/testsuite/g++.dg/vect/pr95401.cc
+++ b/gcc/testsuite/g++.dg/vect/pr95401.cc
@@ -1,5 +1,5 @@
 // { dg-additional-options "-mavx2 -O3" { target avx2_runtime } }
-// { dg-additional-sources pr95401a.cc }
+// { dg-additional-sources pr95401a.cc linkonly }
 
 extern int var_9;
 extern unsigned var_14;
diff --git a/gcc/testsuite/lib/gcc-defs.exp b/gcc/testsuite/lib/gcc-defs.exp
index cdca4c254d6ec..c6ec490f0092e 100644
--- a/gcc/testsuite/lib/gcc-defs.exp
+++ b/gcc/testsuite/lib/gcc-defs.exp
@@ -303,18 +303,26 @@ proc dg-additional-options { args } {
 # main source file.
 
 set additional_sources ""
+set additional_sources_omit_on_compile ""
 set additional_sources_used ""
 
 proc dg-additional-sources { args } {
     global additional_sources
+    global additional_sources_omit_on_compile
 
     if { [llength $args] > 3 } {
 	error "[lindex $args 0]: too many arguments"
 	return
     }
 
-    if { [llength $args] >= 3 } {
-	switch [dg-process-target [lindex $args 2]] {
+    set target [lindex $args 2]
+    if { [llength $args] >= 3 && [lindex $target 0] == "linkonly" } {
+	append additional_sources_omit_on_compile " [lindex $args 1]"
+	set target [lreplace $target 0 1]
+    }
+
+    if { [llength $args] >= 3 && $target != ""} {
+	switch [dg-process-target $target] {
 	    "S" { append additional_sources " [lindex $args 1]" }
 	    "N" { }
 	    "F" { error "[lindex $args 0]: `xfail' not allowed here" }
@@ -407,16 +415,29 @@ proc dg-additional-files-options { options source dest type } {
     gcc_adjust_linker_flags
 
     global additional_sources
+    global additional_sources_omit_on_compile
     global additional_sources_used
     global additional_files
     set to_download [list]
-    if { $additional_sources == "" } then {
-    } elseif { $type != "executable" && $dest != "" } then {
+    if { $additional_sources_omit_on_compile != "" \
+	     && $additional_sources != "" \
+	     && $type != "executable" && $dest != "" } then {
+	set linkonly ""
 	foreach s $additional_sources {
-	    unsupported "$s: additional-source will not be used to build $dest"
+	    foreach s2 $additional_sources_omit_on_compile {
+		if { $s == $s2 } {
+		    unsupported "$s: additional-source will not be used to build $dest"
+		    set s ""
+		    break
+		}
+	    }
+	    if { $s != "" } {
+		append linkonly " $s"
+	    }
 	}
-	set additional_sources_used ""
-	set additional_sources ""
+	set additional_sources "$linkonly"
+    }
+    if { $additional_sources == "" } then {
     } else {
 	if [is_remote host] {
 	    lappend options "additional_flags=$additional_sources"

-- 
Alexandre Oliva, happy hacker            https://FSFLA.org/blogs/lxo/
   Free Software Activist                   GNU Toolchain Engineer
More tolerance and less prejudice are key for inclusion and diversity
Excluding neuro-others for not behaving ""normal"" is *not* inclusive

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] [testsuite] add linkonly to dg-additional-sources [PR115295]
  2024-06-12  2:02 [PATCH] [testsuite] add linkonly to dg-additional-sources [PR115295] Alexandre Oliva
@ 2024-06-12  2:41 ` Andrew Pinski
  2024-06-12  5:56   ` [PATCH v2] " Alexandre Oliva
  0 siblings, 1 reply; 3+ messages in thread
From: Andrew Pinski @ 2024-06-12  2:41 UTC (permalink / raw)
  To: Alexandre Oliva; +Cc: gcc-patches, Rainer Orth, Mike Stump

On Tue, Jun 11, 2024 at 7:03 PM Alexandre Oliva <oliva@adacore.com> wrote:
>
>
> The D testsuite shows it was a mistake to assume that
> dg-additional-sources are never to be used for compilation tests.
> Even if an output file is specified for compilation, extra module
> files can be named and used in the compilation without being flagged
> as errors.
>
> Introduce a 'linkonly' flag for dg-additional-sources, and use it in
> pr95401.cc, so that its additional sources get discarded when vector
> tests downgrade to compile-only.
>
> Regstrapped on x86_64-linux-gnu.  Also tested with 'dg-do compile' in
> pr95401.cc.  Ok to install?

I think we should just fully revert the changes to
dg-additional-sources and add an explicit `dg-do run` to pr95401.cc as
I had did to the other vect testcases that fail in a similar way (see
PR 113899, r14-8978-g948dbc5ee45f9f ). Since this is only working
around this one testcase this way.

Thanks,
Andrew Pinski

>
>
> for  gcc/ChangeLog
>
>         * doc/sourcebuild.texi (dg-additional-sources): Add linkonly.
>
> for  gcc/testsuite/ChangeLog
>
>         * g++.dg/vect/pr95401.cc: Add linkonly to dg-additional-sources.
>         * lib/gcc-defs (additional_sources_omit_on_compile): New.
>         (dg-additional-sources): Add to it on linkonly.
>         (dg-additional-files-options): Omit select sources on compile.
> ---
>  gcc/doc/sourcebuild.texi             |    9 +++++----
>  gcc/testsuite/g++.dg/vect/pr95401.cc |    2 +-
>  gcc/testsuite/lib/gcc-defs.exp       |   35 +++++++++++++++++++++++++++-------
>  3 files changed, 34 insertions(+), 12 deletions(-)
>
> diff --git a/gcc/doc/sourcebuild.texi b/gcc/doc/sourcebuild.texi
> index e997dbec3334b..08c178db674c8 100644
> --- a/gcc/doc/sourcebuild.texi
> +++ b/gcc/doc/sourcebuild.texi
> @@ -1320,15 +1320,16 @@ to @var{var_value} before execution of the program created by the test.
>  Specify additional files, other than source files, that must be copied
>  to the system where the compiler runs.
>
> -@item @{ dg-additional-sources "@var{filelist}" [@{ target @var{selector} @}] @}
> +@item @{ dg-additional-sources "@var{filelist}" [@{ \[linkonly\] \[target @var{selector}\] @}] @}
>  Specify additional source files to appear in the compile line
>  following the main test file.
>  If the directive includes the optional @samp{@{ @var{selector} @}}
>  then the additional sources are only added if the target system
>  matches the @var{selector}.
> -Additional sources are generally used only in @samp{link} and @samp{run}
> -tests; they are reported as unsupported and discarded in other kinds of
> -tests that direct the compiler to output to a single file.
> +If @samp{linkonly} is specified, additional sources are used only in
> +@samp{link} and @samp{run} tests; they are reported as unsupported and
> +discarded in other kinds of tests that direct the compiler to output to
> +a single file.
>  @end table
>
>  @subsubsection Add checks at the end of a test
> diff --git a/gcc/testsuite/g++.dg/vect/pr95401.cc b/gcc/testsuite/g++.dg/vect/pr95401.cc
> index 6a56dab095722..8b1be4f242521 100644
> --- a/gcc/testsuite/g++.dg/vect/pr95401.cc
> +++ b/gcc/testsuite/g++.dg/vect/pr95401.cc
> @@ -1,5 +1,5 @@
>  // { dg-additional-options "-mavx2 -O3" { target avx2_runtime } }
> -// { dg-additional-sources pr95401a.cc }
> +// { dg-additional-sources pr95401a.cc linkonly }
>
>  extern int var_9;
>  extern unsigned var_14;
> diff --git a/gcc/testsuite/lib/gcc-defs.exp b/gcc/testsuite/lib/gcc-defs.exp
> index cdca4c254d6ec..c6ec490f0092e 100644
> --- a/gcc/testsuite/lib/gcc-defs.exp
> +++ b/gcc/testsuite/lib/gcc-defs.exp
> @@ -303,18 +303,26 @@ proc dg-additional-options { args } {
>  # main source file.
>
>  set additional_sources ""
> +set additional_sources_omit_on_compile ""
>  set additional_sources_used ""
>
>  proc dg-additional-sources { args } {
>      global additional_sources
> +    global additional_sources_omit_on_compile
>
>      if { [llength $args] > 3 } {
>         error "[lindex $args 0]: too many arguments"
>         return
>      }
>
> -    if { [llength $args] >= 3 } {
> -       switch [dg-process-target [lindex $args 2]] {
> +    set target [lindex $args 2]
> +    if { [llength $args] >= 3 && [lindex $target 0] == "linkonly" } {
> +       append additional_sources_omit_on_compile " [lindex $args 1]"
> +       set target [lreplace $target 0 1]
> +    }
> +
> +    if { [llength $args] >= 3 && $target != ""} {
> +       switch [dg-process-target $target] {
>             "S" { append additional_sources " [lindex $args 1]" }
>             "N" { }
>             "F" { error "[lindex $args 0]: `xfail' not allowed here" }
> @@ -407,16 +415,29 @@ proc dg-additional-files-options { options source dest type } {
>      gcc_adjust_linker_flags
>
>      global additional_sources
> +    global additional_sources_omit_on_compile
>      global additional_sources_used
>      global additional_files
>      set to_download [list]
> -    if { $additional_sources == "" } then {
> -    } elseif { $type != "executable" && $dest != "" } then {
> +    if { $additional_sources_omit_on_compile != "" \
> +            && $additional_sources != "" \
> +            && $type != "executable" && $dest != "" } then {
> +       set linkonly ""
>         foreach s $additional_sources {
> -           unsupported "$s: additional-source will not be used to build $dest"
> +           foreach s2 $additional_sources_omit_on_compile {
> +               if { $s == $s2 } {
> +                   unsupported "$s: additional-source will not be used to build $dest"
> +                   set s ""
> +                   break
> +               }
> +           }
> +           if { $s != "" } {
> +               append linkonly " $s"
> +           }
>         }
> -       set additional_sources_used ""
> -       set additional_sources ""
> +       set additional_sources "$linkonly"
> +    }
> +    if { $additional_sources == "" } then {
>      } else {
>         if [is_remote host] {
>             lappend options "additional_flags=$additional_sources"
>
> --
> Alexandre Oliva, happy hacker            https://FSFLA.org/blogs/lxo/
>    Free Software Activist                   GNU Toolchain Engineer
> More tolerance and less prejudice are key for inclusion and diversity
> Excluding neuro-others for not behaving ""normal"" is *not* inclusive

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH v2] [testsuite] add linkonly to dg-additional-sources [PR115295]
  2024-06-12  2:41 ` Andrew Pinski
@ 2024-06-12  5:56   ` Alexandre Oliva
  0 siblings, 0 replies; 3+ messages in thread
From: Alexandre Oliva @ 2024-06-12  5:56 UTC (permalink / raw)
  To: Andrew Pinski; +Cc: gcc-patches, Rainer Orth, Mike Stump

On Jun 11, 2024, Andrew Pinski <pinskia@gmail.com> wrote:

> I think we should just fully revert the changes to
> dg-additional-sources and add an explicit `dg-do run` to pr95401.cc

I don't suppose an explicit "dg-do run" would make things work reliably,
after we've detected that hardware or runtime support for vectors is
missing.

I'd much rather extend the solution to the other potentially affected tests,
as in this revised patch.  Regstrapped on x86_64-linux-gnu.  Ok to install?


The D testsuite shows it was a mistake to assume that
dg-additional-sources are never to be used for compilation tests.
Even if an output file is specified for compilation, extra module
files can be named and used in the compilation without being flagged
as errors.

Introduce a 'linkonly' flag for dg-additional-sources, and use it in
pr95401.cc and other vector tests that default to run, so that its
additional sources get discarded when vector tests downgrade to
compile-only.  This reverts previous workarounds for this very
circumstance, that relied on being able to run vector tests anyway,
even after failing to detect runtime or hardware vector support.


for  gcc/ChangeLog

	PR d/115295
	* doc/sourcebuild.texi (dg-additional-sources): Add linkonly.

for  gcc/testsuite/ChangeLog

	PR d/115295
	* g++.dg/vect/pr95401.cc: Add linkonly to dg-additional-sources.
	* g++.dg/vect/pr68762-1.cc: Likewise.
	* g++.dg/vect/simd-clone-3.cc: Likewise.
	* g++.dg/vect/simd-clone-5.cc: Likewise.
	* gcc.dg/vect/vect-simd-clone-10.c: Likewise.  Drop dg-do run.
	* gcc.dg/vect/vect-simd-clone-12.c: Likewise.  Likewise.
	* lib/gcc-defs.exp (additional_sources_omit_on_compile): New.
	(dg-additional-sources): Add to it on linkonly.
	(dg-additional-files-options): Omit select sources on compile.
---
 gcc/doc/sourcebuild.texi                       |    9 +++---
 gcc/testsuite/g++.dg/vect/pr68762-1.cc         |    2 +
 gcc/testsuite/g++.dg/vect/pr95401.cc           |    2 +
 gcc/testsuite/g++.dg/vect/simd-clone-3.cc      |    2 +
 gcc/testsuite/g++.dg/vect/simd-clone-5.cc      |    2 +
 gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c |    4 +--
 gcc/testsuite/gcc.dg/vect/vect-simd-clone-12.c |    4 +--
 gcc/testsuite/lib/gcc-defs.exp                 |   35 +++++++++++++++++++-----
 8 files changed, 39 insertions(+), 21 deletions(-)

diff --git a/gcc/doc/sourcebuild.texi b/gcc/doc/sourcebuild.texi
index e37fb85f3b316..22fc5dca6ce73 100644
--- a/gcc/doc/sourcebuild.texi
+++ b/gcc/doc/sourcebuild.texi
@@ -1320,15 +1320,16 @@ to @var{var_value} before execution of the program created by the test.
 Specify additional files, other than source files, that must be copied
 to the system where the compiler runs.
 
-@item @{ dg-additional-sources "@var{filelist}" [@{ target @var{selector} @}] @}
+@item @{ dg-additional-sources "@var{filelist}" [@{ \[linkonly\] \[target @var{selector}\] @}] @}
 Specify additional source files to appear in the compile line
 following the main test file.
 If the directive includes the optional @samp{@{ @var{selector} @}}
 then the additional sources are only added if the target system
 matches the @var{selector}.
-Additional sources are generally used only in @samp{link} and @samp{run}
-tests; they are reported as unsupported and discarded in other kinds of
-tests that direct the compiler to output to a single file.
+If @samp{linkonly} is specified, additional sources are used only in
+@samp{link} and @samp{run} tests; they are reported as unsupported and
+discarded in other kinds of tests that direct the compiler to output to
+a single file.
 @end table
 
 @subsubsection Add checks at the end of a test
diff --git a/gcc/testsuite/g++.dg/vect/pr68762-1.cc b/gcc/testsuite/g++.dg/vect/pr68762-1.cc
index 118a301ab90d5..53cc6e4c6dfa7 100644
--- a/gcc/testsuite/g++.dg/vect/pr68762-1.cc
+++ b/gcc/testsuite/g++.dg/vect/pr68762-1.cc
@@ -2,7 +2,7 @@
 // { dg-require-effective-target vect_simd_clones }
 // { dg-additional-options "-fopenmp-simd -fno-inline" }
 // { dg-additional-options "-mavx" { target avx_runtime } }
-// { dg-additional-sources "pr68762-2.cc" }
+// { dg-additional-sources "pr68762-2.cc" linkonly }
 
 #include "pr68762.h"
 
diff --git a/gcc/testsuite/g++.dg/vect/pr95401.cc b/gcc/testsuite/g++.dg/vect/pr95401.cc
index 6a56dab095722..8b1be4f242521 100644
--- a/gcc/testsuite/g++.dg/vect/pr95401.cc
+++ b/gcc/testsuite/g++.dg/vect/pr95401.cc
@@ -1,5 +1,5 @@
 // { dg-additional-options "-mavx2 -O3" { target avx2_runtime } }
-// { dg-additional-sources pr95401a.cc }
+// { dg-additional-sources pr95401a.cc linkonly }
 
 extern int var_9;
 extern unsigned var_14;
diff --git a/gcc/testsuite/g++.dg/vect/simd-clone-3.cc b/gcc/testsuite/g++.dg/vect/simd-clone-3.cc
index 1057a7eb5f6a5..4dd9d15d1a3bd 100644
--- a/gcc/testsuite/g++.dg/vect/simd-clone-3.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-clone-3.cc
@@ -1,7 +1,7 @@
 // { dg-require-effective-target vect_simd_clones }
 // { dg-additional-options "-fopenmp-simd -fno-inline" }
 // { dg-additional-options "-mavx" { target avx_runtime } }
-// { dg-additional-sources "simd-clone-2.cc" }
+// { dg-additional-sources "simd-clone-2.cc" linkonly }
 
 #include "simd-clone-2.h"
 
diff --git a/gcc/testsuite/g++.dg/vect/simd-clone-5.cc b/gcc/testsuite/g++.dg/vect/simd-clone-5.cc
index 07ec8a8079efc..aca64a03c3aa9 100644
--- a/gcc/testsuite/g++.dg/vect/simd-clone-5.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-clone-5.cc
@@ -1,7 +1,7 @@
 // { dg-require-effective-target vect_simd_clones }
 // { dg-additional-options "-fopenmp-simd -fno-inline" }
 // { dg-additional-options "-mavx" { target avx_runtime } }
-// { dg-additional-sources "simd-clone-4.cc" }
+// { dg-additional-sources "simd-clone-4.cc" linkonly }
 
 #include "simd-clone-4.h"
 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c
index 009c849b7e7ea..06fbdef1da9c6 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c
@@ -1,9 +1,7 @@
-/* Since this uses dg-additional-sources, need to specify `dg-do run` instead of the default. */
-/* { dg-do run } */
 /* { dg-require-effective-target vect_simd_clones } */
 /* { dg-additional-options "-fopenmp-simd" } */
 /* { dg-additional-options "-mavx" { target avx_runtime } } */
-/* { dg-additional-sources vect-simd-clone-10a.c } */
+/* { dg-additional-sources vect-simd-clone-10a.c linkonly } */
 
 #include "tree-vect.h"
 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-12.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-12.c
index 4699a3f3c8001..f640c8bc9dd8b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-12.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-12.c
@@ -1,9 +1,7 @@
-/* Since this uses dg-additional-sources, need to specify `dg-do run` instead of the default. */
-/* { dg-do run } */
 /* { dg-require-effective-target vect_simd_clones } */
 /* { dg-additional-options "-fopenmp-simd" } */
 /* { dg-additional-options "-mavx" { target avx_runtime } } */
-/* { dg-additional-sources vect-simd-clone-12a.c } */
+/* { dg-additional-sources vect-simd-clone-12a.c linkonly } */
 
 #include "vect-simd-clone-10.c"
 
diff --git a/gcc/testsuite/lib/gcc-defs.exp b/gcc/testsuite/lib/gcc-defs.exp
index cdca4c254d6ec..c6ec490f0092e 100644
--- a/gcc/testsuite/lib/gcc-defs.exp
+++ b/gcc/testsuite/lib/gcc-defs.exp
@@ -303,18 +303,26 @@ proc dg-additional-options { args } {
 # main source file.
 
 set additional_sources ""
+set additional_sources_omit_on_compile ""
 set additional_sources_used ""
 
 proc dg-additional-sources { args } {
     global additional_sources
+    global additional_sources_omit_on_compile
 
     if { [llength $args] > 3 } {
 	error "[lindex $args 0]: too many arguments"
 	return
     }
 
-    if { [llength $args] >= 3 } {
-	switch [dg-process-target [lindex $args 2]] {
+    set target [lindex $args 2]
+    if { [llength $args] >= 3 && [lindex $target 0] == "linkonly" } {
+	append additional_sources_omit_on_compile " [lindex $args 1]"
+	set target [lreplace $target 0 1]
+    }
+
+    if { [llength $args] >= 3 && $target != ""} {
+	switch [dg-process-target $target] {
 	    "S" { append additional_sources " [lindex $args 1]" }
 	    "N" { }
 	    "F" { error "[lindex $args 0]: `xfail' not allowed here" }
@@ -407,16 +415,29 @@ proc dg-additional-files-options { options source dest type } {
     gcc_adjust_linker_flags
 
     global additional_sources
+    global additional_sources_omit_on_compile
     global additional_sources_used
     global additional_files
     set to_download [list]
-    if { $additional_sources == "" } then {
-    } elseif { $type != "executable" && $dest != "" } then {
+    if { $additional_sources_omit_on_compile != "" \
+	     && $additional_sources != "" \
+	     && $type != "executable" && $dest != "" } then {
+	set linkonly ""
 	foreach s $additional_sources {
-	    unsupported "$s: additional-source will not be used to build $dest"
+	    foreach s2 $additional_sources_omit_on_compile {
+		if { $s == $s2 } {
+		    unsupported "$s: additional-source will not be used to build $dest"
+		    set s ""
+		    break
+		}
+	    }
+	    if { $s != "" } {
+		append linkonly " $s"
+	    }
 	}
-	set additional_sources_used ""
-	set additional_sources ""
+	set additional_sources "$linkonly"
+    }
+    if { $additional_sources == "" } then {
     } else {
 	if [is_remote host] {
 	    lappend options "additional_flags=$additional_sources"


-- 
Alexandre Oliva, happy hacker            https://FSFLA.org/blogs/lxo/
   Free Software Activist                   GNU Toolchain Engineer
More tolerance and less prejudice are key for inclusion and diversity
Excluding neuro-others for not behaving ""normal"" is *not* inclusive

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-06-12  5:58 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-06-12  2:02 [PATCH] [testsuite] add linkonly to dg-additional-sources [PR115295] Alexandre Oliva
2024-06-12  2:41 ` Andrew Pinski
2024-06-12  5:56   ` [PATCH v2] " Alexandre Oliva

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).