On Fri, Jun 19, 2015 at 6:35 PM, Bill Schmidt <wschm...@linux.vnet.ibm.com> wrote: > Hi, > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65914 demonstrates that we > fail to match vector predicates with pseudos that are in the virtual > stack register range. The reduced test case provided with the bug > report, when compiled for the C++14 standard, demonstrates that we need > to be able to do this. This patch loosens the restriction for the > vector predicates so that all pseudos are accepted. Thanks to Uli > Weigand for his insights on this bug. > > As a side benefit, applying this patch fixes a number of libgomp tests > that have been failing recently. > > Bootstrapped and tested on powerpc64le-unknown-linux-gnu with no > regressions. Is this ok for trunk? After it burns in, I would propose > to backport it to GCC 5.1 and GCC 4.9 (when the tree is open). > > Thanks, > Bill > > > [gcc] > > 2015-05-19 Bill Schmidt <wschm...@linux.vnet.ibm.com> > > * config/rs6000/predicates.md (altivec_register_operand): Permit > virtual stack registers. > (vsx_register_operand): Likewise. > (vfloat_operand): Likewise. > (vint_operand): Likewise. > (vlogical_operand): Likewise.
Okay. > [gcc/testsuite] > > 2015-05-19 Bill Schmidt <wschm...@linux.vnet.ibm.com> > > * g++.dg/torture/pr65419.C: New. Maybe you should ask Richi or Jakub about the testcase because you are placing it in a non-target-specific location. It should succeed on all targets, but it may expose latent bugs on other targets. Thanks, David