Hi Segher, on 2019/7/9 上午12:32, Segher Boessenkool wrote: > Hi Kewen, > > On Mon, Jul 08, 2019 at 04:07:00PM +0800, Kewen.Lin wrote: >> gcc/ChangeLog > > (You have trailing spaces in the changelog, fwiw). >
Thanks for catching! >> --- /dev/null >> +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr88497-1.c >> @@ -0,0 +1,60 @@ >> +/* { dg-do run } */ >> +/* { dg-require-effective-target vect_double } */ >> +/* { dg-require-effective-target powerpc_vsx_ok { target { powerpc*-*-* } } >> } */ > > For "dg-do run" tests, you need "powerpc_vsx_hw". "_ok" only tests if > the assembler can handle VSX instructions, not whether the test system > can run them. (powerpc_vsx_ok is what you need for "dg-do assemble" or > "dg-do link" tests. It also tests if you can use -mvsx, but that doesn't > do what you might hope it does: you can use -mvsx together with a -mcpu= > that doesn't support VSX, for example). > Thanks, I will update it. But sorry that I can't find "powerpc_vsx_hw" but "vsx_hw_available". I guess it's the one you are referring to? And I happened to find the vect_double will force powerpc to check vsx_hw_available. This reminds me I should use sse2 instead of sse2-runtime for case 2-5. >> +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr88497-2.c >> @@ -0,0 +1,37 @@ >> +/* { dg-do compile } */ >> +/* { dg-require-effective-target vect_float } */ >> +/* { dg-require-effective-target powerpc_altivec_ok { target { powerpc*-*-* >> } } } */ > > This one is fine, and the rest of the tests as well. > > > Segher >