Re: [PATCH] Fix PR70011 (backlevel test case)
On Mon, Feb 29, 2016 at 11:49 AM, Bill Schmidtwrote: > Hi, > > PR70011 identifies an old vectorization test that recently started > failing on GCC 6 with POWER8 hardware. This "failure" is that we now > find vectorization of the test case to be profitable, where it didn't > used to be. A combination of two factors allowed this to become > profitable here: First, the POWER8 feature that unaligned vector > accesses are supported by hardware; and second, some improvement in the > vectorizer itself (vect_recog_mult_pattern now kicks in). > > The proposed fix herein is to XFAIL the test for vectorization failure > for POWER subtargets that support efficient unaligned vector accesses. > Since this also requires the vectorization improvement that only occurs > in GCC 6, it makes sense to only make this change on trunk. > > I've verified the modified test on powerpc64le-unknown-linux-gnu > (POWER8) and on powerpc64-unknown-linux-gnu (both POWER7 and POWER8) and > everything works as expected. Is this ok for trunk? > > Thanks, > Bill > > > 2016-02-29 Bill Schmidt > > PR target/70011 > * gcc.dg/vect/costmodel/ppc/costmodel-fast-math-vect-pr299925.c: > XFAIL when hardware supports efficient unaligned storage access. Okay. Thanks, David
[PATCH] Fix PR70011 (backlevel test case)
Hi, PR70011 identifies an old vectorization test that recently started failing on GCC 6 with POWER8 hardware. This "failure" is that we now find vectorization of the test case to be profitable, where it didn't used to be. A combination of two factors allowed this to become profitable here: First, the POWER8 feature that unaligned vector accesses are supported by hardware; and second, some improvement in the vectorizer itself (vect_recog_mult_pattern now kicks in). The proposed fix herein is to XFAIL the test for vectorization failure for POWER subtargets that support efficient unaligned vector accesses. Since this also requires the vectorization improvement that only occurs in GCC 6, it makes sense to only make this change on trunk. I've verified the modified test on powerpc64le-unknown-linux-gnu (POWER8) and on powerpc64-unknown-linux-gnu (both POWER7 and POWER8) and everything works as expected. Is this ok for trunk? Thanks, Bill 2016-02-29 Bill SchmidtPR target/70011 * gcc.dg/vect/costmodel/ppc/costmodel-fast-math-vect-pr299925.c: XFAIL when hardware supports efficient unaligned storage access. Index: gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-fast-math-vect-pr29925.c === --- gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-fast-math-vect-pr29925.c (revision 233813) +++ gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-fast-math-vect-pr29925.c (working copy) @@ -35,5 +35,5 @@ int main() return 0; } -/* { dg-final { scan-tree-dump-times "vectorization not profitable" 1 "vect" } } */ +/* { dg-final { scan-tree-dump-times "vectorization not profitable" 1 "vect" { xfail { vect_hw_misalign } } } } */