Hi!
On Thu, Jan 09, 2020 at 01:44:59PM -0600, Peter Bergner wrote:
> The other test cases just need a slight adjustment to some of their
> counts.
What were the changes? Or, I'll just trust you looked at it and it is
okay :-)
> were seeing double/triple/... counting due to using "xxland" instead of
> {\mxxland\M} for our regex, so that was also counting xxlandc too.
> I adjusted all of the insn regexs to use \m and \M to fix that.
Great, thanks. That should reduce some of the fragility:
> I must say that the vsx-vector-6.p*.c tests are fragile! They're so big and
> reusing source operands, that the compiler can sometimes optimize several
> builtin calls together, meaning we don't see as many vsx instructions as
> we have calls to builtins. I didn't bother trying to fix that, since that
> is a lot more work! I just wanted to vent! :-)
Splitting out separate functions in the testcase shouldn't be so much
work? Or am I too optimistic :-)
This should make the test a good deal less prone to random changes in
output caused by the lunar cycle.
> --- gcc/testsuite/gcc.dg/vmx/ops.c (revision 279852)
> +++ gcc/testsuite/gcc.dg/vmx/ops.c (working copy)
> @@ -1,5 +1,5 @@
> /* { dg-do compile } */
> -/* { dg-options "-maltivec -mabi=altivec -std=gnu99 -mno-vsx
> -Wno-deprecated" } */
> +/* { dg-options "-maltivec -mabi=altivec -std=gnu99 -mno-vsx -Wno-deprecated
> -flax-vector-conversions" } */
I guess we need some tests using this, too ;-) (If not for that, it would
normally be better to just fix the code to not warn).
> -/* { dg-final { scan-assembler-times "vperm" 2 } } */
> -/* { dg-final { scan-assembler-times "xvrdpic" 2 } } */
> -/* { dg-final { scan-assembler-times "vmsumshs" 2 } } */
> -/* { dg-final { scan-assembler-times "xxland" 13 } } */
> -/* { dg-final { scan-assembler-times "xxlxor" 2 } } */
> -/* { dg-final { scan-assembler-times "xvrdpi" 7 } } */
> +/* { dg-final { scan-assembler-times {\mvperm\M} 1 } } */
> +/* { dg-final { scan-assembler-times {\mxvrdpic\M} 1 } } */
> +/* { dg-final { scan-assembler-times {\mvmsumshs\M} 1 } } */
> +/* { dg-final { scan-assembler-times {\mxxland\M} 2 } } */
> +/* { dg-final { scan-assembler-times {\mxxlandc\M} 12 } } */
> +/* { dg-final { scan-assembler-times {\mxxlxor\M} 3 } } */
> +/* { dg-final { scan-assembler-times {\mxxsel\M} 2 } } */
Yeah, not funny how many actual change there are.
Okay for trunk. Thanks!
Segher