https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65484

            Bug ID: 65484
           Summary: FAIL: g++.dg/vect/pr36648.cc on powerpc64
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: testsuite
          Assignee: unassigned at gcc dot gnu.org
          Reporter: msebor at gcc dot gnu.org

The g++.dg/vect/pr36648.cc (a P1 4.3/4.4 regression) test fails on powerpc64:

FAIL: g++.dg/vect/pr36648.cc  -std=c++98  scan-tree-dump-times vect "vectorized
1 loops" 1
FAIL: g++.dg/vect/pr36648.cc  -std=c++98  scan-tree-dump-times vect
"vectorizing stmts using SLP" 1
...

The verbose runtest output shows the test is being compiled with the
undocumented -mno-allow-movmisalign option (see pr65482):

Executing on host: /build/gcc-5.0/gcc/testsuite/g++/../../xg++
-B/build/gcc-5.0/gcc/testsuite/g++/../../
/src/gcc-trunk-git/gcc/testsuite/g++.dg/vect/pr36648.cc ... -O2
-ftree-vectorize -fno-vect-cost-model -maltivec -mvsx -mno-allow-movmisalign
-fdump-tree-vect-details ... -o ./pr36648.exe    (timeout = 300)

The .vect dump shows gcc decides not to vectorize the code because of an
(apparently) unsupported unaligned store:

$ grep -e vectorized -e vectorizing pr36648.cc.126t.vect
/src/gcc-trunk-git/gcc/testsuite/g++.dg/vect/pr36648.cc:9:8: note: ===
vect_mark_stmts_to_be_vectorized ===
/src/gcc-trunk-git/gcc/testsuite/g++.dg/vect/pr36648.cc:9:8: note: not
vectorized: unsupported unaligned store._14->x
/src/gcc-trunk-git/gcc/testsuite/g++.dg/vect/pr36648.cc:18:14: note: vectorized
0 loops in function.

The -mno-allow-movmisalign option likely gets added to the command line in
check_vect_support_and_set_flags in lib/target-supports.exp.

Since the pr36648 regression was about GCC generating incorrect code with -O3
(that led to the program crashing at runtime) and not about it necessarily
being able to vectorize it, the use of the option seems questionable.  It
should be sufficient to verify that the test compiles and runs successfully to
completion.

Reply via email to