[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