Hi! On Thu, Jan 04, 2018 at 08:16:06AM -0600, Bill Schmidt wrote: > https://gcc.gnu.org/PR83677 reports that generation of xxpermr is always > wrong. It effectively inverts the order of the two input registers from > what they should be. This patch addresses that and provides a test case > modified from the original report.
How confusing. Maybe it would be easier to read if the operands number 1 and 2 in the pattern had swapped numbers. > Bootstrapped and tested on powerpc64le-linux-gnu with no regressions. > Is this okay for trunk and shortly for backport to GCC 7? I will check > on 6, but I'm pretty certain this was introduced in 7, as 6 has only > minimal POWER9 support. Okay for trunk and all branches where it is needed. Thanks! One minor testcase thingie: > --- gcc/testsuite/gcc.target/powerpc/pr83677.c (nonexistent) > +++ gcc/testsuite/gcc.target/powerpc/pr83677.c (working copy) > @@ -0,0 +1,166 @@ > +/* { dg-do run { target { powerpc64*-*-* && { lp64 && p9vector_hw } } } } */ powerpc*-*-* please; or why would that not work? Segher