On Thu, Mar 11, 2021 at 3:47 PM Alexandre Oliva <ol...@adacore.com> wrote: > > On Mar 11, 2021, Richard Biener <richard.guent...@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