[RFC] decay vect tests from run to link for pr95401

Richard Biener richard.guenther@gmail.com
Fri Mar 12 07:42:37 GMT 2021


On Thu, Mar 11, 2021 at 3:47 PM Alexandre Oliva <oliva@adacore.com> wrote:
>
> On Mar 11, 2021, Richard Biener <richard.guenther@gmail.com> wrote:
>
> > I think that's OK.
>
> Cool, here's the patch I'm nearly done regstrapping on x86_64-linux-gnu
> and x-ppc64-vx7r2.  Ok to install?

OK.

Richard.

> > It's probably difficult to make the test UNSUPPORTED
> > when dg-additional-sources is discovered with a dg-do compile test?
>
> Well, first of all, I really don't like the idea of skipping a test if
> we can still get some useful information out of it.
>
> That said, I suppose we could test for additional_sources_used in
> ${langdriver}_target_compile proces in gcc.exp, g++.exp et al, between
> their calling dg-additional-files-options and target_compile, to
> conditionally skip the latter, or pass $type to the former in all
> $langdriver.exp, so that the extra files can be flagged and/or discarded
> in unsupported modes.  I believe such changes would also require
> adjustments to library test infrastructures.
>
>
> decay vect tests from run to link for pr95401
>
> When vect.exp finds our configuration disables altivec by default, it
> disables the execution of vectorization tests, assuming the test
> hardware doesn't support it.
>
> Tests become just compile tests, but compile tests won't work
> correctly when additional sources are named, e.g. pr95401.cc, because
> GCC refuses to compile multiple files into the same asm output.
>
> With this patch, the default for when execution is not possible
> becomes link.
>
>
> for  gcc/testsuite/ChangeLog
>
>         * lib/target-supports.exp (check_vect_support_and_set_flags):
>         Decay to link rather than compile.
> ---
>  gcc/testsuite/lib/target-supports.exp |   14 +++++++-------
>  1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
> index 52d3d036d3c5c..f5b9b0578de37 100644
> --- a/gcc/testsuite/lib/target-supports.exp
> +++ b/gcc/testsuite/lib/target-supports.exp
> @@ -9632,7 +9632,7 @@ proc check_vect_support_and_set_flags { } {
>          if [check_750cl_hw_available] {
>              set dg-do-what-default run
>          } else {
> -            set dg-do-what-default compile
> +            set dg-do-what-default link
>          }
>      } elseif [istarget powerpc*-*-*] {
>          # Skip targets not supporting -maltivec.
> @@ -9656,14 +9656,14 @@ proc check_vect_support_and_set_flags { } {
>                  # Specify a cpu that supports VMX for compile-only tests.
>                  lappend DEFAULT_VECTCFLAGS "-mcpu=970"
>              }
> -            set dg-do-what-default compile
> +            set dg-do-what-default link
>          }
>      } elseif { [istarget i?86-*-*] || [istarget x86_64-*-*] } {
>          lappend DEFAULT_VECTCFLAGS "-msse2"
>          if { [check_effective_target_sse2_runtime] } {
>              set dg-do-what-default run
>          } else {
> -            set dg-do-what-default compile
> +            set dg-do-what-default link
>          }
>      } elseif { [istarget mips*-*-*]
>                && [check_effective_target_nomips16] } {
> @@ -9682,7 +9682,7 @@ proc check_vect_support_and_set_flags { } {
>          if [check_effective_target_ultrasparc_hw] {
>              set dg-do-what-default run
>          } else {
> -            set dg-do-what-default compile
> +            set dg-do-what-default link
>          }
>      } elseif [istarget alpha*-*-*] {
>          # Alpha's vectorization capabilities are extremely limited.
> @@ -9695,7 +9695,7 @@ proc check_vect_support_and_set_flags { } {
>          if [check_alpha_max_hw_available] {
>              set dg-do-what-default run
>          } else {
> -            set dg-do-what-default compile
> +            set dg-do-what-default link
>          }
>      } elseif [istarget ia64-*-*] {
>          set dg-do-what-default run
> @@ -9708,7 +9708,7 @@ proc check_vect_support_and_set_flags { } {
>          if [is-effective-target arm_neon_hw] {
>              set dg-do-what-default run
>          } else {
> -            set dg-do-what-default compile
> +            set dg-do-what-default link
>          }
>      } elseif [istarget "aarch64*-*-*"] {
>          set dg-do-what-default run
> @@ -9729,7 +9729,7 @@ proc check_vect_support_and_set_flags { } {
>              set dg-do-what-default run
>          } else {
>             lappend DEFAULT_VECTCFLAGS "-march=z14" "-mzarch"
> -            set dg-do-what-default compile
> +            set dg-do-what-default link
>          }
>      } elseif [istarget amdgcn-*-*] {
>          set dg-do-what-default run
>
>
> --
> Alexandre Oliva, happy hacker  https://FSFLA.org/blogs/lxo/
>    Free Software Activist         GNU Toolchain Engineer
>         Vim, Vi, Voltei pro Emacs -- GNUlius Caesar


More information about the Gcc-patches mailing list