* [PATCH] Fix vector tests on ARM platforms with disabled unaligned accesses
@ 2014-07-23 14:27 Marat Zakirov
2014-07-24 12:36 ` [PATCHv2] " Marat Zakirov
2014-07-24 15:31 ` [PATCH] " Ramana Radhakrishnan
0 siblings, 2 replies; 11+ messages in thread
From: Marat Zakirov @ 2014-07-23 14:27 UTC (permalink / raw)
To: gcc-patches; +Cc: Richard Biener, Cong Hou, Yury Gribov
[-- Attachment #1: Type: text/plain, Size: 2128 bytes --]
Hi there!
I made a patch which fixes regressions on ARM platforms with disabled
unaligned accesses. The problem is that 'arm_vect_no_misalign' predicate
do not check 'unaligned_access' global variable to determine whether
unaligned access to vector are allowed. This leads to spurious vect.exp
test fails when GCC is configured
--with-specs=%{!munaligned-access:-mno-unaligned-access}.
Attached patch fixes ARM predicate and several tests to correctly handle
the issue.
The following targets were reg. tested for multiple targets (ARM,
Thumb-1, Thumb-2, x86, x86_64) with and without -mno-unaligned-access.
Analysis showed patch affects only vect.exp tests so only vect.exp was
tested.
For x86, x86_64, ARM without -mno-unaligned-access, Thumb-2 without
-mno-unaligned-access and Thumb-1 no regressions occured. For
ARM/Thumb2 with -mno-unaligned-access patch fixed most of failures but
triggered some problems (see attached log) for current vect.exp tests:
1) https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61887
2) Some XPASS'es due to unexpected loop versioning (e.g.
gcc.dg/vect/pr33804.c).
3) After predicate fix some passing tests which require unaligned vector
support become NA (this was expected).
P.S.
Here used configurations:
ARM_BASE = configure --build=x86_64-pc-linux-gnu
--host=x86_64-pc-linux-gnu --target=arm-linux-gnueabi --with-interwork
--enable-long-long --enable-languages=c,c++,fortran --enable-shared
--with-gnu-as --with-gnu-ld
ARM
$ARM_BASE --with-mode=arm --with-arch=armv7-a
ARM with -mno-unaligned-access option
$ARM_BASE --with-mode=arm --with-arch=armv7-a
--with-specs=%{!munaligned-access:-mno-unaligned-access}
Thumb-2
$ARM_BASE --with-mode=thumb --with-arch=armv7-a
Thumb-2 with -mno-unaligned-access
$ARM_BASE --with-mode=thumb --with-arch=armv7-a
--with-specs=%{!munaligned-access:-mno-unaligned-access}
Thumb-1
$ARM_BASE --with-mode=thumb --with-arch=armv4t
Thumb-1 with -mno-unaligned-access
$ARM_BASE --with-mode=thumb --with-arch=armv4t
--with-specs=%{!munaligned-access:-mno-unaligned-access}
x86
configure --enable-languages=c,c++,fortran
--Marat
[-- Attachment #2: unalign.diff --]
[-- Type: text/x-patch, Size: 2005 bytes --]
gcc/testsuite/ChangeLog:
2014-07-23 Marat Zakirov <m.zakirov@samsung.com>
* gcc.dg/vect/vect-109.c: Predicate added.
* gcc.dg/vect/vect-93.c: Test check fixed.
* lib/target-supports.exp (check_effective_target_arm_vect_no_misalign):
Check unaligned feature.
diff --git a/gcc/testsuite/gcc.dg/vect/vect-109.c b/gcc/testsuite/gcc.dg/vect/vect-109.c
index 854c970..fb87e2c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-109.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-109.c
@@ -1,4 +1,4 @@
-/* { dg-require-effective-target vect_int } */
+/* { dg-require-effective-target { vect_int && {! vect_no_align } } } */
#include <stdarg.h>
#include "tree-vect.h"
diff --git a/gcc/testsuite/gcc.dg/vect/vect-93.c b/gcc/testsuite/gcc.dg/vect/vect-93.c
index 65403eb..1065a6e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-93.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-93.c
@@ -79,7 +79,7 @@ int main (void)
/* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" { target vect_no_align } } } */
/* in main: */
-/* { dg-final { scan-tree-dump-times "vectorized 0 loops" 1 "vect" { target vect_no_align } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_no_align } } } */
/* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1 "vect" { xfail { vect_no_align } } } } */
/* { dg-final { cleanup-tree-dump "vect" } } */
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index 5290a55..190483c 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -2293,7 +2293,8 @@ proc check_effective_target_arm_little_endian { } {
proc check_effective_target_arm_vect_no_misalign { } {
return [check_no_compiler_messages arm_vect_no_misalign assembly {
#if !defined(__arm__) \
- || (defined(__ARMEL__) \
+ || (defined(__ARM_FEATURE_UNALIGNED) \
+ && defined(__ARMEL__) \
&& (!defined(__thumb__) || defined(__thumb2__)))
#error FOO
#endif
[-- Attachment #3: arm_regs.log --]
[-- Type: text/x-log, Size: 20743 bytes --]
dg-cmp-results.sh: Verbosity is 2, Variant is ""
Older log file: ./gcc/testsuite/gcc/gcc.sum
Test Run By mzakirov on Tue Jul 22 12:12:27 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign//build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/gcc/gcc.sum
Test Run By mzakirov on Tue Jul 22 12:22:35 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
UNRESOLVED->NA: gcc.dg/vect/bb-slp-10.c -flto scan-tree-dump-times slp "basic block vectorized using SLP" 1
UNRESOLVED->NA: gcc.dg/vect/bb-slp-10.c scan-tree-dump-times slp "basic block vectorized using SLP" 1
UNRESOLVED->NA: gcc.dg/vect/bb-slp-24.c -flto scan-tree-dump-times slp "basic block vectorized using SLP" 1
UNRESOLVED->NA: gcc.dg/vect/bb-slp-24.c scan-tree-dump-times slp "basic block vectorized using SLP" 1
UNRESOLVED->NA: gcc.dg/vect/bb-slp-25.c -flto scan-tree-dump-times slp "basic block vectorized using SLP" 1
UNRESOLVED->NA: gcc.dg/vect/bb-slp-25.c scan-tree-dump-times slp "basic block vectorized using SLP" 1
UNRESOLVED->NA: gcc.dg/vect/bb-slp-29.c -flto scan-tree-dump-times slp "basic block vectorized using SLP" 1
UNRESOLVED->NA: gcc.dg/vect/bb-slp-29.c scan-tree-dump-times slp "basic block vectorized using SLP" 1
UNRESOLVED->NA: gcc.dg/vect/bb-slp-cond-1.c -flto scan-tree-dump-times slp "basic block vectorized using SLP" 1
UNRESOLVED->NA: gcc.dg/vect/bb-slp-cond-1.c scan-tree-dump-times slp "basic block vectorized using SLP" 1
UNRESOLVED->NA: gcc.dg/vect/bb-slp-pattern-2.c -flto scan-tree-dump-times slp "basic block vectorized using SLP" 1
UNRESOLVED->NA: gcc.dg/vect/bb-slp-pattern-2.c scan-tree-dump-times slp "basic block vectorized using SLP" 1
PASS->XPASS: gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-6.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-6-global.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-8.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
NA->PASS: gcc.dg/vect/no-vfa-vect-43.c scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-57.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-61.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-1.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: gcc.dg/vect/O3-pr41881.c scan-tree-dump-times vect "vectorized 1 loops" 2
PASS->NA: gcc.dg/vect/O3-slp-reduc-10.c scan-tree-dump-times vect "vectorized 1 loops" 2
NA->UNRESOLVED: gcc.dg/vect/pr16105.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr16105.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->UNRESOLVED: gcc.dg/vect/pr20122.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr20122.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
PASS->XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33953.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33953.c scan-tree-dump-times vect "vectorizing stmts using SLP" 1
UNRESOLVED->NA: gcc.dg/vect/slp-23.c -flto scan-tree-dump-times vect "vectorized 2 loops" 1
PASS->NA: gcc.dg/vect/slp-23.c scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/slp-24-big-array.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2
FAIL->XFAIL: gcc.dg/vect/slp-24.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2
NA->UNRESOLVED: gcc.dg/vect/vect-105-big-array.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105-big-array.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->UNRESOLVED: gcc.dg/vect/vect-105.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->UNRESOLVED: gcc.dg/vect/vect-27.c -flto scan-tree-dump-times vect "vectorized 1 loops" 1
NA->PASS: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->UNRESOLVED: gcc.dg/vect/vect-29.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning." 1
NA->PASS: gcc.dg/vect/vect-29.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-29.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->UNRESOLVED: gcc.dg/vect/vect-42.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning" 3
UNRESOLVED->NA: gcc.dg/vect/vect-42.c -flto scan-tree-dump-times vect "Vectorizing an unaligned access" 3
NA->PASS: gcc.dg/vect/vect-42.c scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->NA: gcc.dg/vect/vect-42.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
NA->UNRESOLVED: gcc.dg/vect/vect-44.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->UNRESOLVED: gcc.dg/vect/vect-48.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning." 2
NA->PASS: gcc.dg/vect/vect-48.c scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-48.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->UNRESOLVED: gcc.dg/vect/vect-50.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->UNRESOLVED: gcc.dg/vect/vect-52.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning." 2
NA->PASS: gcc.dg/vect/vect-52.c scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-52.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
UNRESOLVED->NA: gcc.dg/vect/vect-56.c -flto scan-tree-dump-times vect "Alignment of access forced using peeling" 1
UNRESOLVED->NA: gcc.dg/vect/vect-56.c -flto scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
UNRESOLVED->NA: gcc.dg/vect/vect-60.c -flto scan-tree-dump-times vect "Alignment of access forced using peeling" 1
UNRESOLVED->NA: gcc.dg/vect/vect-60.c -flto scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->UNRESOLVED: gcc.dg/vect/vect-75-big-array.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning" 1
NA->PASS: gcc.dg/vect/vect-75-big-array.c scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75-big-array.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->UNRESOLVED: gcc.dg/vect/vect-75.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning" 1
NA->PASS: gcc.dg/vect/vect-75.c scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->UNRESOLVED: gcc.dg/vect/vect-77-alignchecks.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning." 1
NA->PASS: gcc.dg/vect/vect-77-alignchecks.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-alignchecks.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->UNRESOLVED: gcc.dg/vect/vect-77-global.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning." 1
NA->PASS: gcc.dg/vect/vect-77-global.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-global.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->UNRESOLVED: gcc.dg/vect/vect-78-alignchecks.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning." 1
NA->PASS: gcc.dg/vect/vect-78-alignchecks.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-alignchecks.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->UNRESOLVED: gcc.dg/vect/vect-78-global.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning." 1
NA->PASS: gcc.dg/vect/vect-78-global.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-global.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->UNRESOLVED: gcc.dg/vect/vect-93.c -flto scan-tree-dump-times vect "vectorized 1 loops" 1
NA->UNRESOLVED: gcc.dg/vect/vect-93.c -flto scan-tree-dump-times vect "vectorized 2 loops" 1
NA->PASS: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "vectorized 1 loops" 1
NA->PASS: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->UNRESOLVED: gcc.dg/vect/vect-95.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning" 4
NA->UNRESOLVED: gcc.dg/vect/vect-95.c -flto scan-tree-dump-times vect "Vectorizing an unaligned access" 0
XPASS->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
NA->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Alignment of access forced using versioning" 4
NA->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Vectorizing an unaligned access" 0
NA->UNRESOLVED: gcc.dg/vect/vect-96.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning." 1
UNRESOLVED->NA: gcc.dg/vect/vect-96.c -flto scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-96.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->NA: gcc.dg/vect/vect-96.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-1.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-3.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-4.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->XPASS: gcc.dg/vect/vect-cselim-1.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Alignment of access forced using peeling" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Vectorizing an unaligned access" 4
NA->UNRESOLVED: gcc.dg/vect/vect-multitypes-3.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning" 3
NA->PASS: gcc.dg/vect/vect-multitypes-3.c scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-3.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
UNRESOLVED->NA: gcc.dg/vect/vect-multitypes-4.c -flto scan-tree-dump-times vect "Alignment of access forced using peeling" 0
UNRESOLVED->NA: gcc.dg/vect/vect-multitypes-4.c -flto scan-tree-dump-times vect "Vectorizing an unaligned access" 4
PASS->NA: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "Vectorizing an unaligned access" 4
NA->UNRESOLVED: gcc.dg/vect/vect-multitypes-6.c -flto scan-tree-dump-times vect "Alignment of access forced using versioning" 6
NA->PASS: gcc.dg/vect/vect-multitypes-6.c scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-6.c scan-tree-dump-times vect "Vectorizing an unaligned access" 6
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-1.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-2.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
UNRESOLVED->NA: gcc.dg/vect/vect-outer-4c-big-array.c -flto scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
UNRESOLVED->NA: gcc.dg/vect/vect-outer-4c.c -flto scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->XPASS: gcc.dg/vect/vect-outer-5.c scan-tree-dump vect "zero step in outer loop."
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-pre-interact.c scan-tree-dump-times vect "vectorized 1 loops" 1
dg-cmp-results.sh: Verbosity is 2, Variant is ""
Older log file: ./gcc/testsuite/gfortran/gfortran.sum
Test Run By mzakirov on Tue Jul 22 12:12:27 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign//build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/gfortran/gfortran.sum
Test Run By mzakirov on Tue Jul 22 12:22:35 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
FAIL->XFAIL: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 3
NA->PASS: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
dg-cmp-results.sh: Verbosity is 2, Variant is ""
Older log file: ./gcc/testsuite/g++/g++.sum
Test Run By mzakirov on Tue Jul 22 12:12:27 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign//build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/g++/g++.sum
Test Run By mzakirov on Tue Jul 22 12:22:35 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
PASS->NA: g++.dg/vect/pr36648.cc -std=c++11 scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++11 scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++98 scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++98 scan-tree-dump-times vect "vectorizing stmts using SLP" 1
dg-cmp-results.sh: Verbosity is 2, Variant is ""
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libitm/testsuite/libitm.sum
Test Run By mzakirov on Tue Jul 22 12:12:26 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign//build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libitm/testsuite/libitm.sum
Test Run By mzakirov on Tue Jul 22 12:22:35 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is ""
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libgomp/testsuite/libgomp.sum
Test Run By mzakirov on Tue Jul 22 12:12:26 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign//build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libgomp/testsuite/libgomp.sum
Test Run By mzakirov on Tue Jul 22 12:22:34 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is ""
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libstdc++-v3/testsuite/libstdc++.sum
Test Run By mzakirov on Tue Jul 22 12:12:26 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign//build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libstdc++-v3/testsuite/libstdc++.sum
Test Run By mzakirov on Tue Jul 22 12:22:34 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is ""
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libatomic/testsuite/libatomic.sum
Test Run By mzakirov on Tue Jul 22 12:12:26 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign//build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libatomic/testsuite/libatomic.sum
Test Run By mzakirov on Tue Jul 22 12:22:35 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCHv2] Fix vector tests on ARM platforms with disabled unaligned accesses
2014-07-23 14:27 [PATCH] Fix vector tests on ARM platforms with disabled unaligned accesses Marat Zakirov
@ 2014-07-24 12:36 ` Marat Zakirov
2014-07-24 15:44 ` [PATCHv3] " Marat Zakirov
2014-07-24 15:31 ` [PATCH] " Ramana Radhakrishnan
1 sibling, 1 reply; 11+ messages in thread
From: Marat Zakirov @ 2014-07-24 12:36 UTC (permalink / raw)
To: gcc-patches; +Cc: Richard Biener, Cong Hou, Yury Gribov
[-- Attachment #1: Type: text/plain, Size: 1942 bytes --]
On 07/23/2014 06:23 PM, Marat Zakirov wrote:
> Hi there!
>
> I made a patch which fixes regressions on ARM platforms with disabled
> unaligned accesses. The problem is that 'arm_vect_no_misalign'
> predicate do not check 'unaligned_access' global variable to determine
> whether unaligned access to vector are allowed. This leads to spurious
> vect.exp test fails when GCC is configured
> --with-specs=%{!munaligned-access:-mno-unaligned-access}.
>
> Attached patch fixes ARM predicate and several tests to correctly
> handle the issue.
>
> The following targets were reg. tested for multiple targets (ARM,
> Thumb-1, Thumb-2, x86, x86_64) with and without
> -mno-unaligned-access. Analysis showed patch affects only vect.exp
> tests so only vect.exp was tested.
>
> For x86, x86_64, ARM without -mno-unaligned-access, Thumb-2 without
> -mno-unaligned-access and Thumb-1 no regressions occured. For
> ARM/Thumb2 with -mno-unaligned-access patch fixed most of failures but
> triggered some problems (see attached log) for current vect.exp tests:
> 1) https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61887
> 2) Some XPASS'es due to unexpected loop versioning (e.g.
> gcc.dg/vect/pr33804.c).
> 3) After predicate fix some passing tests which require unaligned
> vector support become NA (this was expected).
>
Here is new version of patch and regression log. On the current trunk
results are slightly different due to patches for Richard Biener (no
UNRESOLVED fails) but some PASS->XPASS regressions still remain (see
attachment):
PASS->XPASS: gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects
scan-tree-dump-times vect "vectorized 1 loops" 1
etc.
These XPASS'es are due to code versioning: current GCC creates 2
versions of loop: aligned and misaligned. It's look like they are
slightly out of date at lest for ARM.
[-- Attachment #2: unalign2.diff --]
[-- Type: text/x-patch, Size: 2656 bytes --]
gcc/testsuite/ChangeLog:
2014-07-23 Marat Zakirov <m.zakirov@samsung.com>
* gcc.dg/vect/vect-109.c: Skip predicate added.
* gcc.dg/vect/vect-93.c: Test check fixed.
* gcc.dg/vect/bb-slp-10.c: Likewise.
* lib/target-supports.exp (check_effective_target_arm_vect_no_misalign):
Check unaligned feature.
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
index a1850ed..0090a4b 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
@@ -49,7 +49,7 @@ int main (void)
return 0;
}
-/* { dg-final { scan-tree-dump-times "unsupported alignment in basic block." 1 "slp2" { xfail vect_element_align } } } */
+/* { dg-final { scan-tree-dump "unsupported alignment in basic block." 1 "slp2" { xfail vect_element_align } } } */
/* { dg-final { scan-tree-dump-times "basic block vectorized" 1 "slp2" { target vect_element_align } } } */
/* { dg-final { cleanup-tree-dump "slp2" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/vect-109.c b/gcc/testsuite/gcc.dg/vect/vect-109.c
index 854c970..c671175 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-109.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-109.c
@@ -1,3 +1,4 @@
+/* { dg-skip-if "" { vect_no_align } } */
/* { dg-require-effective-target vect_int } */
#include <stdarg.h>
diff --git a/gcc/testsuite/gcc.dg/vect/vect-93.c b/gcc/testsuite/gcc.dg/vect/vect-93.c
index 65403eb..1065a6e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-93.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-93.c
@@ -79,7 +79,7 @@ int main (void)
/* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" { target vect_no_align } } } */
/* in main: */
-/* { dg-final { scan-tree-dump-times "vectorized 0 loops" 1 "vect" { target vect_no_align } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_no_align } } } */
/* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1 "vect" { xfail { vect_no_align } } } } */
/* { dg-final { cleanup-tree-dump "vect" } } */
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index db65ebe..42251e8 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -2293,7 +2293,8 @@ proc check_effective_target_arm_little_endian { } {
proc check_effective_target_arm_vect_no_misalign { } {
return [check_no_compiler_messages arm_vect_no_misalign assembly {
#if !defined(__arm__) \
- || (defined(__ARMEL__) \
+ || (defined(__ARM_FEATURE_UNALIGNED) \
+ && defined(__ARMEL__) \
&& (!defined(__thumb__) || defined(__thumb2__)))
#error FOO
#endif
[-- Attachment #3: arm_regs2.log --]
[-- Type: text/x-log, Size: 30527 bytes --]
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/gcc/gcc.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/gcc/gcc.sum
Test Run By mzakirov on Thu Jul 24 13:09:25 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
FAIL->NA: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "basic block vectorized" 1
XFAIL->FAIL: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "unsupported alignment in basic block." 1
FAIL->NA: gcc.dg/vect/bb-slp-10.c scan-tree-dump-times slp2 "basic block vectorized" 1
XFAIL->FAIL: gcc.dg/vect/bb-slp-10.c scan-tree-dump-times slp2 "unsupported alignment in basic block." 1
FAIL->NA: gcc.dg/vect/bb-slp-24.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-24.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-25.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-25.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-29.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-29.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->XFAIL: gcc.dg/vect/bb-slp-32.c -flto -ffat-lto-objects scan-tree-dump slp2 "vectorization is not profitable"
FAIL->XFAIL: gcc.dg/vect/bb-slp-32.c scan-tree-dump slp2 "vectorization is not profitable"
FAIL->XFAIL: gcc.dg/vect/bb-slp-9.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "basic block vectorized" 1
FAIL->XFAIL: gcc.dg/vect/bb-slp-9.c scan-tree-dump-times slp2 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-cond-1.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-cond-1.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-pattern-2.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-pattern-2.c scan-tree-dump-times slp1 "basic block vectorized" 1
PASS->XPASS: gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-6.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-6-global.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-8.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
NA->PASS: gcc.dg/vect/no-vfa-vect-43.c scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-57.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-61.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-1.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-2.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-3.c scan-tree-dump-times vect "vectorized 1 loops" 4
PASS->NA: gcc.dg/vect/O3-pr41881.c scan-tree-dump-times vect "vectorized 1 loops" 2
PASS->NA: gcc.dg/vect/O3-slp-reduc-10.c scan-tree-dump-times vect "vectorized 1 loops" 2
NA->PASS: gcc.dg/vect/pr16105.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr16105.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr20122.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr20122.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33953.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33953.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33953.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33953.c scan-tree-dump-times vect "vectorizing stmts using SLP" 1
FAIL->XFAIL: gcc.dg/vect/pr56787.c -flto -ffat-lto-objects scan-tree-dump vect "vectorized 1 loops"
FAIL->XFAIL: gcc.dg/vect/pr56787.c scan-tree-dump vect "vectorized 1 loops"
PASS->XPASS: gcc.dg/vect/pr58508.c -flto -ffat-lto-objects scan-tree-dump-times vect "hoist" 3
PASS->XPASS: gcc.dg/vect/pr58508.c scan-tree-dump-times vect "hoist" 3
PASS->NA: gcc.dg/vect/slp-23.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
PASS->NA: gcc.dg/vect/slp-23.c scan-tree-dump-times vect "vectorized 2 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2
NA->PASS: gcc.dg/vect/vect-105-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105-big-array.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->UNSUPPORTED: gcc.dg/vect/vect-109.c
PASS->NA: gcc.dg/vect/vect-109.c execution test
NA->UNSUPPORTED: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects
PASS->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects execution test
XFAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "not vectorized
FAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects (test for excess errors)
XFAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "not vectorized
FAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-109.c (test for excess errors)
NA->PASS: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-29.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-29.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-29.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-29.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-42.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->NA: gcc.dg/vect/vect-42.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
NA->PASS: gcc.dg/vect/vect-42.c scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->NA: gcc.dg/vect/vect-42.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-48.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-48.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-48.c scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-48.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-52.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-52.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-52.c scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-52.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
XPASS->PASS: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75-big-array.c scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75-big-array.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75.c scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-alignchecks.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-alignchecks.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-global.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-global.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-alignchecks.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-alignchecks.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-global.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-global.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
NA->PASS: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "vectorized 1 loops" 1
NA->PASS: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
NA->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 4
NA->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 0
XPASS->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
NA->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Alignment of access forced using versioning" 4
NA->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Vectorizing an unaligned access" 0
NA->PASS: gcc.dg/vect/vect-96.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->NA: gcc.dg/vect/vect-96.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-96.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->NA: gcc.dg/vect/vect-96.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-1.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-3.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-4.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->XPASS: gcc.dg/vect/vect-cselim-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/vect-cselim-1.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 4
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Alignment of access forced using peeling" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Vectorizing an unaligned access" 4
NA->PASS: gcc.dg/vect/vect-multitypes-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
NA->PASS: gcc.dg/vect/vect-multitypes-3.c scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-3.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 4
PASS->NA: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "Vectorizing an unaligned access" 4
NA->PASS: gcc.dg/vect/vect-multitypes-6.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-6.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 6
NA->PASS: gcc.dg/vect/vect-multitypes-6.c scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-6.c scan-tree-dump-times vect "Vectorizing an unaligned access" 6
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-1.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-2.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-2.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->XPASS: gcc.dg/vect/vect-outer-5.c -flto -ffat-lto-objects scan-tree-dump vect "zero step in outer loop."
PASS->XPASS: gcc.dg/vect/vect-outer-5.c scan-tree-dump vect "zero step in outer loop."
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-pre-interact.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-pre-interact.c scan-tree-dump-times vect "vectorized 1 loops" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/gfortran/gfortran.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/gfortran/gfortran.sum
Test Run By mzakirov on Thu Jul 24 13:09:25 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
NA->FAIL: gfortran.dg/vect/pr32380.f -O scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gfortran.dg/vect/pr32380.f -O scan-tree-dump-times vect "vectorized 5 loops" 1
FAIL->XFAIL: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 3
NA->PASS: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/g++/g++.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/g++/g++.sum
Test Run By mzakirov on Thu Jul 24 13:09:25 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
PASS->NA: g++.dg/vect/pr36648.cc -std=c++11 scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++11 scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++1y scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++1y scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++98 scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++98 scan-tree-dump-times vect "vectorizing stmts using SLP" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libitm/testsuite/libitm.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libitm/testsuite/libitm.sum
Test Run By mzakirov on Thu Jul 24 13:09:24 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libgomp/testsuite/libgomp.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libgomp/testsuite/libgomp.sum
Test Run By mzakirov on Thu Jul 24 13:09:24 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libstdc++-v3/testsuite/libstdc++.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libstdc++-v3/testsuite/libstdc++.sum
Test Run By mzakirov on Thu Jul 24 13:09:24 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libatomic/testsuite/libatomic.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libatomic/testsuite/libatomic.sum
Test Run By mzakirov on Thu Jul 24 13:09:24 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] Fix vector tests on ARM platforms with disabled unaligned accesses
2014-07-23 14:27 [PATCH] Fix vector tests on ARM platforms with disabled unaligned accesses Marat Zakirov
2014-07-24 12:36 ` [PATCHv2] " Marat Zakirov
@ 2014-07-24 15:31 ` Ramana Radhakrishnan
1 sibling, 0 replies; 11+ messages in thread
From: Ramana Radhakrishnan @ 2014-07-24 15:31 UTC (permalink / raw)
To: Marat Zakirov; +Cc: gcc-patches, Richard Biener, Cong Hou, Yury Gribov
>
> diff --git a/gcc/testsuite/gcc.dg/vect/vect-109.c
> b/gcc/testsuite/gcc.dg/vect/vect-109.c
> index 854c970..fb87e2c 100644
> --- a/gcc/testsuite/gcc.dg/vect/vect-109.c
> +++ b/gcc/testsuite/gcc.dg/vect/vect-109.c
> @@ -1,4 +1,4 @@
> -/* { dg-require-effective-target vect_int } */
> +/* { dg-require-effective-target { vect_int && {! vect_no_align } } } */
>
> #include <stdarg.h>
> #include "tree-vect.h"
> diff --git a/gcc/testsuite/gcc.dg/vect/vect-93.c
> b/gcc/testsuite/gcc.dg/vect/vect-93.c
> index 65403eb..1065a6e 100644
> --- a/gcc/testsuite/gcc.dg/vect/vect-93.c
> +++ b/gcc/testsuite/gcc.dg/vect/vect-93.c
> @@ -79,7 +79,7 @@ int main (void)
> /* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" { target
> vect_no_align } } } */
>
> /* in main: */
> -/* { dg-final { scan-tree-dump-times "vectorized 0 loops" 1 "vect" { target
> vect_no_align } } } */
> +/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target
> vect_no_align } } } */
> /* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1
> "vect" { xfail { vect_no_align } } } } */
>
> /* { dg-final { cleanup-tree-dump "vect" } } */
> diff --git a/gcc/testsuite/lib/target-supports.exp
> b/gcc/testsuite/lib/target-supports.exp
> index 5290a55..190483c 100644
> --- a/gcc/testsuite/lib/target-supports.exp
> +++ b/gcc/testsuite/lib/target-supports.exp
> @@ -2293,7 +2293,8 @@ proc check_effective_target_arm_little_endian { } {
> proc check_effective_target_arm_vect_no_misalign { } {
> return [check_no_compiler_messages arm_vect_no_misalign assembly {
> #if !defined(__arm__) \
This is redundant.
> - || (defined(__ARMEL__) \
> + || (defined(__ARM_FEATURE_UNALIGNED) \
> + && defined(__ARMEL__) \
> && (!defined(__thumb__) || defined(__thumb2__)))
As is this line.
I think you can restrict the check to defined(__ARM_FEATURE_UNALIGNED)
&& defined(__ARMEL__)
__ARM_FEATURE_UNALIGNED should tell you whether unaligned access is
allowed or not, therefore you should no longer require any specific
"architectural" checks.
> #error FOO
> #endif
>
I'm not sure about the original intent of the tests right now.
Ramana
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCHv3] Fix vector tests on ARM platforms with disabled unaligned accesses
2014-07-24 12:36 ` [PATCHv2] " Marat Zakirov
@ 2014-07-24 15:44 ` Marat Zakirov
2014-07-31 12:21 ` [PING][PATCHv3] " Marat Zakirov
0 siblings, 1 reply; 11+ messages in thread
From: Marat Zakirov @ 2014-07-24 15:44 UTC (permalink / raw)
To: gcc-patches; +Cc: Ramana Radhakrishnan, Cong Hou, Richard Biener, Yury Gribov
[-- Attachment #1: Type: text/plain, Size: 2771 bytes --]
On 07/24/2014 04:27 PM, Marat Zakirov wrote:
>
> On 07/23/2014 06:23 PM, Marat Zakirov wrote:
>> Hi there!
>>
>> I made a patch which fixes regressions on ARM platforms with disabled
>> unaligned accesses. The problem is that 'arm_vect_no_misalign'
>> predicate do not check 'unaligned_access' global variable to
>> determine whether unaligned access to vector are allowed. This leads
>> to spurious vect.exp test fails when GCC is configured
>> --with-specs=%{!munaligned-access:-mno-unaligned-access}.
>>
>> Attached patch fixes ARM predicate and several tests to correctly
>> handle the issue.
>>
>> The following targets were reg. tested for multiple targets (ARM,
>> Thumb-1, Thumb-2, x86, x86_64) with and without
>> -mno-unaligned-access. Analysis showed patch affects only vect.exp
>> tests so only vect.exp was tested.
>>
>> For x86, x86_64, ARM without -mno-unaligned-access, Thumb-2 without
>> -mno-unaligned-access and Thumb-1 no regressions occured. For
>> ARM/Thumb2 with -mno-unaligned-access patch fixed most of failures
>> but triggered some problems (see attached log) for current vect.exp
>> tests:
>> 1) https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61887
>> 2) Some XPASS'es due to unexpected loop versioning (e.g.
>> gcc.dg/vect/pr33804.c).
>> 3) After predicate fix some passing tests which require unaligned
>> vector support become NA (this was expected).
>>
> Here is new version of patch and regression log. On the current trunk
> results are slightly different due to patches for Richard Biener (no
> UNRESOLVED fails) but some PASS->XPASS regressions still remain (see
> attachment):
>
> PASS->XPASS: gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
> scan-tree-dump-times vect "vectorized 1 loops" 1
> PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects
> scan-tree-dump-times vect "vectorized 1 loops" 1
> etc.
>
> These XPASS'es are due to code versioning: current GCC creates 2
> versions of loop: aligned and misaligned. It's look like they are
> slightly out of date at lest for ARM.
>
On 07/24/2014 06:50 PM, Ramana Radhakrishnan wrote:
> This is redundant.
>
>> - || (defined(__ARMEL__) \
>> + || (defined(__ARM_FEATURE_UNALIGNED) \
>> + && defined(__ARMEL__) \
>> && (!defined(__thumb__) || defined(__thumb2__)))
> As is this line.
>
> I think you can restrict the check to defined(__ARM_FEATURE_UNALIGNED)
> && defined(__ARMEL__)
>
> __ARM_FEATURE_UNALIGNED should tell you whether unaligned access is
> allowed or not, therefore you should no longer require any specific
> "architectural" checks.
>
>
>> #error FOO
>> #endif
>>
> I'm not sure about the original intent of the tests right now.
>
> Ramana
>
Thank you Ramana!
--Marat
[-- Attachment #2: arm_regs3.log --]
[-- Type: text/x-log, Size: 30736 bytes --]
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/gcc/gcc.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/gcc/gcc.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
NA->PASS: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump slp2 "unsupported alignment in basic block."
FAIL->NA: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "basic block vectorized" 1
XFAIL->NA: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "unsupported alignment in basic block." 1
NA->PASS: gcc.dg/vect/bb-slp-10.c scan-tree-dump slp2 "unsupported alignment in basic block."
FAIL->NA: gcc.dg/vect/bb-slp-10.c scan-tree-dump-times slp2 "basic block vectorized" 1
XFAIL->NA: gcc.dg/vect/bb-slp-10.c scan-tree-dump-times slp2 "unsupported alignment in basic block." 1
FAIL->NA: gcc.dg/vect/bb-slp-24.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-24.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-25.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-25.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-29.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-29.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->XFAIL: gcc.dg/vect/bb-slp-32.c -flto -ffat-lto-objects scan-tree-dump slp2 "vectorization is not profitable"
FAIL->XFAIL: gcc.dg/vect/bb-slp-32.c scan-tree-dump slp2 "vectorization is not profitable"
FAIL->XFAIL: gcc.dg/vect/bb-slp-9.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "basic block vectorized" 1
FAIL->XFAIL: gcc.dg/vect/bb-slp-9.c scan-tree-dump-times slp2 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-cond-1.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-cond-1.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-pattern-2.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-pattern-2.c scan-tree-dump-times slp1 "basic block vectorized" 1
PASS->XPASS: gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-6.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-6-global.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-8.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
NA->PASS: gcc.dg/vect/no-vfa-vect-43.c scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-57.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-61.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-1.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-2.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-3.c scan-tree-dump-times vect "vectorized 1 loops" 4
PASS->NA: gcc.dg/vect/O3-pr41881.c scan-tree-dump-times vect "vectorized 1 loops" 2
PASS->NA: gcc.dg/vect/O3-slp-reduc-10.c scan-tree-dump-times vect "vectorized 1 loops" 2
NA->PASS: gcc.dg/vect/pr16105.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr16105.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr20122.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr20122.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33953.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33953.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33953.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33953.c scan-tree-dump-times vect "vectorizing stmts using SLP" 1
FAIL->XFAIL: gcc.dg/vect/pr56787.c -flto -ffat-lto-objects scan-tree-dump vect "vectorized 1 loops"
FAIL->XFAIL: gcc.dg/vect/pr56787.c scan-tree-dump vect "vectorized 1 loops"
PASS->XPASS: gcc.dg/vect/pr58508.c -flto -ffat-lto-objects scan-tree-dump-times vect "hoist" 3
PASS->XPASS: gcc.dg/vect/pr58508.c scan-tree-dump-times vect "hoist" 3
PASS->NA: gcc.dg/vect/slp-23.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
PASS->NA: gcc.dg/vect/slp-23.c scan-tree-dump-times vect "vectorized 2 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2
NA->PASS: gcc.dg/vect/vect-105-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105-big-array.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->UNSUPPORTED: gcc.dg/vect/vect-109.c
PASS->NA: gcc.dg/vect/vect-109.c execution test
NA->UNSUPPORTED: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects
PASS->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects execution test
XFAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "not vectorized
FAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects (test for excess errors)
XFAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "not vectorized
FAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-109.c (test for excess errors)
NA->PASS: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-29.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-29.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-29.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-29.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-42.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->NA: gcc.dg/vect/vect-42.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
NA->PASS: gcc.dg/vect/vect-42.c scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->NA: gcc.dg/vect/vect-42.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-48.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-48.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-48.c scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-48.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-52.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-52.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-52.c scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-52.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
XPASS->PASS: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75-big-array.c scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75-big-array.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75.c scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-alignchecks.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-alignchecks.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-global.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-global.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-alignchecks.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-alignchecks.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-global.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-global.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
NA->PASS: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "vectorized 1 loops" 1
NA->PASS: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
NA->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 4
NA->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 0
XPASS->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
NA->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Alignment of access forced using versioning" 4
NA->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Vectorizing an unaligned access" 0
NA->PASS: gcc.dg/vect/vect-96.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->NA: gcc.dg/vect/vect-96.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-96.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->NA: gcc.dg/vect/vect-96.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-1.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-3.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-4.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->XPASS: gcc.dg/vect/vect-cselim-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/vect-cselim-1.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 4
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Alignment of access forced using peeling" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Vectorizing an unaligned access" 4
NA->PASS: gcc.dg/vect/vect-multitypes-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
NA->PASS: gcc.dg/vect/vect-multitypes-3.c scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-3.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 4
PASS->NA: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "Vectorizing an unaligned access" 4
NA->PASS: gcc.dg/vect/vect-multitypes-6.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-6.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 6
NA->PASS: gcc.dg/vect/vect-multitypes-6.c scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-6.c scan-tree-dump-times vect "Vectorizing an unaligned access" 6
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-1.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-2.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-2.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->XPASS: gcc.dg/vect/vect-outer-5.c -flto -ffat-lto-objects scan-tree-dump vect "zero step in outer loop."
PASS->XPASS: gcc.dg/vect/vect-outer-5.c scan-tree-dump vect "zero step in outer loop."
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-pre-interact.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-pre-interact.c scan-tree-dump-times vect "vectorized 1 loops" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/gfortran/gfortran.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/gfortran/gfortran.sum
Test Run By mzakirov on Thu Jul 24 19:17:06 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
NA->FAIL: gfortran.dg/vect/pr32380.f -O scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gfortran.dg/vect/pr32380.f -O scan-tree-dump-times vect "vectorized 5 loops" 1
FAIL->XFAIL: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 3
NA->PASS: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/g++/g++.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/g++/g++.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
PASS->NA: g++.dg/vect/pr36648.cc -std=c++11 scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++11 scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++1y scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++1y scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++98 scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++98 scan-tree-dump-times vect "vectorizing stmts using SLP" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libitm/testsuite/libitm.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libitm/testsuite/libitm.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libgomp/testsuite/libgomp.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libgomp/testsuite/libgomp.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libstdc++-v3/testsuite/libstdc++.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libstdc++-v3/testsuite/libstdc++.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libatomic/testsuite/libatomic.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libatomic/testsuite/libatomic.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
[-- Attachment #3: unalign3.diff --]
[-- Type: text/x-patch, Size: 2663 bytes --]
gcc/testsuite/ChangeLog:
2014-07-23 Marat Zakirov <m.zakirov@samsung.com>
* gcc.dg/vect/vect-109.c: Skip predicate added.
* gcc.dg/vect/vect-93.c: Test check fixed.
* gcc.dg/vect/bb-slp-10.c: Likewise.
* lib/target-supports.exp (check_effective_target_arm_vect_no_misalign):
Check unaligned feature.
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
index a1850ed..0090a4b 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
@@ -49,7 +49,7 @@ int main (void)
return 0;
}
-/* { dg-final { scan-tree-dump-times "unsupported alignment in basic block." 1 "slp2" { xfail vect_element_align } } } */
+/* { dg-final { scan-tree-dump "unsupported alignment in basic block." 1 "slp2" { xfail vect_element_align } } } */
/* { dg-final { scan-tree-dump-times "basic block vectorized" 1 "slp2" { target vect_element_align } } } */
/* { dg-final { cleanup-tree-dump "slp2" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/vect-109.c b/gcc/testsuite/gcc.dg/vect/vect-109.c
index 854c970..c671175 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-109.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-109.c
@@ -1,3 +1,4 @@
+/* { dg-skip-if "" { vect_no_align } } */
/* { dg-require-effective-target vect_int } */
#include <stdarg.h>
diff --git a/gcc/testsuite/gcc.dg/vect/vect-93.c b/gcc/testsuite/gcc.dg/vect/vect-93.c
index 65403eb..1065a6e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-93.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-93.c
@@ -79,7 +79,7 @@ int main (void)
/* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" { target vect_no_align } } } */
/* in main: */
-/* { dg-final { scan-tree-dump-times "vectorized 0 loops" 1 "vect" { target vect_no_align } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_no_align } } } */
/* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1 "vect" { xfail { vect_no_align } } } } */
/* { dg-final { cleanup-tree-dump "vect" } } */
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index db65ebe..35076d2 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -2293,8 +2293,8 @@ proc check_effective_target_arm_little_endian { } {
proc check_effective_target_arm_vect_no_misalign { } {
return [check_no_compiler_messages arm_vect_no_misalign assembly {
#if !defined(__arm__) \
- || (defined(__ARMEL__) \
- && (!defined(__thumb__) || defined(__thumb2__)))
+ || (defined(__ARM_FEATURE_UNALIGNED) \
+ && defined(__ARMEL__))
#error FOO
#endif
}]
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PING][PATCHv3] Fix vector tests on ARM platforms with disabled unaligned accesses
2014-07-24 15:44 ` [PATCHv3] " Marat Zakirov
@ 2014-07-31 12:21 ` Marat Zakirov
2014-08-07 8:52 ` [PINGv2][PATCHv3] " Marat Zakirov
0 siblings, 1 reply; 11+ messages in thread
From: Marat Zakirov @ 2014-07-31 12:21 UTC (permalink / raw)
To: gcc-patches; +Cc: Ramana Radhakrishnan, Cong Hou, Richard Biener, Yury Gribov
[-- Attachment #1: Type: text/plain, Size: 2898 bytes --]
On 07/24/2014 07:40 PM, Marat Zakirov wrote:
>
> On 07/24/2014 04:27 PM, Marat Zakirov wrote:
>>
>> On 07/23/2014 06:23 PM, Marat Zakirov wrote:
>>> Hi there!
>>>
>>> I made a patch which fixes regressions on ARM platforms with
>>> disabled unaligned accesses. The problem is that
>>> 'arm_vect_no_misalign' predicate do not check 'unaligned_access'
>>> global variable to determine whether unaligned access to vector are
>>> allowed. This leads to spurious vect.exp test fails when GCC is
>>> configured --with-specs=%{!munaligned-access:-mno-unaligned-access}.
>>>
>>> Attached patch fixes ARM predicate and several tests to correctly
>>> handle the issue.
>>>
>>> The following targets were reg. tested for multiple targets (ARM,
>>> Thumb-1, Thumb-2, x86, x86_64) with and without
>>> -mno-unaligned-access. Analysis showed patch affects only vect.exp
>>> tests so only vect.exp was tested.
>>>
>>> For x86, x86_64, ARM without -mno-unaligned-access, Thumb-2 without
>>> -mno-unaligned-access and Thumb-1 no regressions occured. For
>>> ARM/Thumb2 with -mno-unaligned-access patch fixed most of failures
>>> but triggered some problems (see attached log) for current vect.exp
>>> tests:
>>> 1) https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61887
>>> 2) Some XPASS'es due to unexpected loop versioning (e.g.
>>> gcc.dg/vect/pr33804.c).
>>> 3) After predicate fix some passing tests which require unaligned
>>> vector support become NA (this was expected).
>>>
>> Here is new version of patch and regression log. On the current trunk
>> results are slightly different due to patches for Richard Biener (no
>> UNRESOLVED fails) but some PASS->XPASS regressions still remain (see
>> attachment):
>>
>> PASS->XPASS: gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
>> scan-tree-dump-times vect "vectorized 1 loops" 1
>> PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects
>> scan-tree-dump-times vect "vectorized 1 loops" 1
>> etc.
>>
>> These XPASS'es are due to code versioning: current GCC creates 2
>> versions of loop: aligned and misaligned. It's look like they are
>> slightly out of date at lest for ARM.
>>
>
> On 07/24/2014 06:50 PM, Ramana Radhakrishnan wrote:
>> This is redundant.
>>
>>> - || (defined(__ARMEL__) \
>>> + || (defined(__ARM_FEATURE_UNALIGNED) \
>>> + && defined(__ARMEL__) \
>>> && (!defined(__thumb__) || defined(__thumb2__)))
>> As is this line.
>>
>> I think you can restrict the check to defined(__ARM_FEATURE_UNALIGNED)
>> && defined(__ARMEL__)
>>
>> __ARM_FEATURE_UNALIGNED should tell you whether unaligned access is
>> allowed or not, therefore you should no longer require any specific
>> "architectural" checks.
>>
>>
>>> #error FOO
>>> #endif
>>>
>> I'm not sure about the original intent of the tests right now.
>>
>> Ramana
>>
>
> Thank you Ramana!
>
> --Marat
[-- Attachment #2: unalign3.diff --]
[-- Type: text/x-patch, Size: 2663 bytes --]
gcc/testsuite/ChangeLog:
2014-07-23 Marat Zakirov <m.zakirov@samsung.com>
* gcc.dg/vect/vect-109.c: Skip predicate added.
* gcc.dg/vect/vect-93.c: Test check fixed.
* gcc.dg/vect/bb-slp-10.c: Likewise.
* lib/target-supports.exp (check_effective_target_arm_vect_no_misalign):
Check unaligned feature.
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
index a1850ed..0090a4b 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
@@ -49,7 +49,7 @@ int main (void)
return 0;
}
-/* { dg-final { scan-tree-dump-times "unsupported alignment in basic block." 1 "slp2" { xfail vect_element_align } } } */
+/* { dg-final { scan-tree-dump "unsupported alignment in basic block." 1 "slp2" { xfail vect_element_align } } } */
/* { dg-final { scan-tree-dump-times "basic block vectorized" 1 "slp2" { target vect_element_align } } } */
/* { dg-final { cleanup-tree-dump "slp2" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/vect-109.c b/gcc/testsuite/gcc.dg/vect/vect-109.c
index 854c970..c671175 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-109.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-109.c
@@ -1,3 +1,4 @@
+/* { dg-skip-if "" { vect_no_align } } */
/* { dg-require-effective-target vect_int } */
#include <stdarg.h>
diff --git a/gcc/testsuite/gcc.dg/vect/vect-93.c b/gcc/testsuite/gcc.dg/vect/vect-93.c
index 65403eb..1065a6e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-93.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-93.c
@@ -79,7 +79,7 @@ int main (void)
/* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" { target vect_no_align } } } */
/* in main: */
-/* { dg-final { scan-tree-dump-times "vectorized 0 loops" 1 "vect" { target vect_no_align } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_no_align } } } */
/* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1 "vect" { xfail { vect_no_align } } } } */
/* { dg-final { cleanup-tree-dump "vect" } } */
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index db65ebe..35076d2 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -2293,8 +2293,8 @@ proc check_effective_target_arm_little_endian { } {
proc check_effective_target_arm_vect_no_misalign { } {
return [check_no_compiler_messages arm_vect_no_misalign assembly {
#if !defined(__arm__) \
- || (defined(__ARMEL__) \
- && (!defined(__thumb__) || defined(__thumb2__)))
+ || (defined(__ARM_FEATURE_UNALIGNED) \
+ && defined(__ARMEL__))
#error FOO
#endif
}]
[-- Attachment #3: arm_regs3.log --]
[-- Type: text/x-log, Size: 30736 bytes --]
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/gcc/gcc.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/gcc/gcc.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
NA->PASS: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump slp2 "unsupported alignment in basic block."
FAIL->NA: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "basic block vectorized" 1
XFAIL->NA: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "unsupported alignment in basic block." 1
NA->PASS: gcc.dg/vect/bb-slp-10.c scan-tree-dump slp2 "unsupported alignment in basic block."
FAIL->NA: gcc.dg/vect/bb-slp-10.c scan-tree-dump-times slp2 "basic block vectorized" 1
XFAIL->NA: gcc.dg/vect/bb-slp-10.c scan-tree-dump-times slp2 "unsupported alignment in basic block." 1
FAIL->NA: gcc.dg/vect/bb-slp-24.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-24.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-25.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-25.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-29.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-29.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->XFAIL: gcc.dg/vect/bb-slp-32.c -flto -ffat-lto-objects scan-tree-dump slp2 "vectorization is not profitable"
FAIL->XFAIL: gcc.dg/vect/bb-slp-32.c scan-tree-dump slp2 "vectorization is not profitable"
FAIL->XFAIL: gcc.dg/vect/bb-slp-9.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "basic block vectorized" 1
FAIL->XFAIL: gcc.dg/vect/bb-slp-9.c scan-tree-dump-times slp2 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-cond-1.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-cond-1.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-pattern-2.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-pattern-2.c scan-tree-dump-times slp1 "basic block vectorized" 1
PASS->XPASS: gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-6.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-6-global.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-8.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
NA->PASS: gcc.dg/vect/no-vfa-vect-43.c scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-57.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-61.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-1.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-2.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-3.c scan-tree-dump-times vect "vectorized 1 loops" 4
PASS->NA: gcc.dg/vect/O3-pr41881.c scan-tree-dump-times vect "vectorized 1 loops" 2
PASS->NA: gcc.dg/vect/O3-slp-reduc-10.c scan-tree-dump-times vect "vectorized 1 loops" 2
NA->PASS: gcc.dg/vect/pr16105.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr16105.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr20122.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr20122.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33953.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33953.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33953.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33953.c scan-tree-dump-times vect "vectorizing stmts using SLP" 1
FAIL->XFAIL: gcc.dg/vect/pr56787.c -flto -ffat-lto-objects scan-tree-dump vect "vectorized 1 loops"
FAIL->XFAIL: gcc.dg/vect/pr56787.c scan-tree-dump vect "vectorized 1 loops"
PASS->XPASS: gcc.dg/vect/pr58508.c -flto -ffat-lto-objects scan-tree-dump-times vect "hoist" 3
PASS->XPASS: gcc.dg/vect/pr58508.c scan-tree-dump-times vect "hoist" 3
PASS->NA: gcc.dg/vect/slp-23.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
PASS->NA: gcc.dg/vect/slp-23.c scan-tree-dump-times vect "vectorized 2 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2
NA->PASS: gcc.dg/vect/vect-105-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105-big-array.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->UNSUPPORTED: gcc.dg/vect/vect-109.c
PASS->NA: gcc.dg/vect/vect-109.c execution test
NA->UNSUPPORTED: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects
PASS->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects execution test
XFAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "not vectorized
FAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects (test for excess errors)
XFAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "not vectorized
FAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-109.c (test for excess errors)
NA->PASS: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-29.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-29.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-29.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-29.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-42.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->NA: gcc.dg/vect/vect-42.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
NA->PASS: gcc.dg/vect/vect-42.c scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->NA: gcc.dg/vect/vect-42.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-48.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-48.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-48.c scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-48.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-52.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-52.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-52.c scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-52.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
XPASS->PASS: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75-big-array.c scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75-big-array.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75.c scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-alignchecks.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-alignchecks.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-global.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-global.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-alignchecks.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-alignchecks.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-global.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-global.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
NA->PASS: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "vectorized 1 loops" 1
NA->PASS: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
NA->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 4
NA->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 0
XPASS->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
NA->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Alignment of access forced using versioning" 4
NA->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Vectorizing an unaligned access" 0
NA->PASS: gcc.dg/vect/vect-96.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->NA: gcc.dg/vect/vect-96.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-96.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->NA: gcc.dg/vect/vect-96.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-1.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-3.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-4.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->XPASS: gcc.dg/vect/vect-cselim-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/vect-cselim-1.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 4
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Alignment of access forced using peeling" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Vectorizing an unaligned access" 4
NA->PASS: gcc.dg/vect/vect-multitypes-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
NA->PASS: gcc.dg/vect/vect-multitypes-3.c scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-3.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 4
PASS->NA: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "Vectorizing an unaligned access" 4
NA->PASS: gcc.dg/vect/vect-multitypes-6.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-6.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 6
NA->PASS: gcc.dg/vect/vect-multitypes-6.c scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-6.c scan-tree-dump-times vect "Vectorizing an unaligned access" 6
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-1.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-2.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-2.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->XPASS: gcc.dg/vect/vect-outer-5.c -flto -ffat-lto-objects scan-tree-dump vect "zero step in outer loop."
PASS->XPASS: gcc.dg/vect/vect-outer-5.c scan-tree-dump vect "zero step in outer loop."
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-pre-interact.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-pre-interact.c scan-tree-dump-times vect "vectorized 1 loops" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/gfortran/gfortran.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/gfortran/gfortran.sum
Test Run By mzakirov on Thu Jul 24 19:17:06 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
NA->FAIL: gfortran.dg/vect/pr32380.f -O scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gfortran.dg/vect/pr32380.f -O scan-tree-dump-times vect "vectorized 5 loops" 1
FAIL->XFAIL: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 3
NA->PASS: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/g++/g++.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/g++/g++.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
PASS->NA: g++.dg/vect/pr36648.cc -std=c++11 scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++11 scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++1y scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++1y scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++98 scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++98 scan-tree-dump-times vect "vectorizing stmts using SLP" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libitm/testsuite/libitm.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libitm/testsuite/libitm.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libgomp/testsuite/libgomp.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libgomp/testsuite/libgomp.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libstdc++-v3/testsuite/libstdc++.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libstdc++-v3/testsuite/libstdc++.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libatomic/testsuite/libatomic.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libatomic/testsuite/libatomic.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PINGv2][PATCHv3] Fix vector tests on ARM platforms with disabled unaligned accesses
2014-07-31 12:21 ` [PING][PATCHv3] " Marat Zakirov
@ 2014-08-07 8:52 ` Marat Zakirov
2014-08-14 13:40 ` [PINGv3][PATCHv3] " Marat Zakirov
0 siblings, 1 reply; 11+ messages in thread
From: Marat Zakirov @ 2014-08-07 8:52 UTC (permalink / raw)
To: gcc-patches; +Cc: Ramana Radhakrishnan, Cong Hou, Richard Biener, Yury Gribov
[-- Attachment #1: Type: text/plain, Size: 3024 bytes --]
On 07/31/2014 04:08 PM, Marat Zakirov wrote:
>
> On 07/24/2014 07:40 PM, Marat Zakirov wrote:
>>
>> On 07/24/2014 04:27 PM, Marat Zakirov wrote:
>>>
>>> On 07/23/2014 06:23 PM, Marat Zakirov wrote:
>>>> Hi there!
>>>>
>>>> I made a patch which fixes regressions on ARM platforms with
>>>> disabled unaligned accesses. The problem is that
>>>> 'arm_vect_no_misalign' predicate do not check 'unaligned_access'
>>>> global variable to determine whether unaligned access to vector are
>>>> allowed. This leads to spurious vect.exp test fails when GCC is
>>>> configured --with-specs=%{!munaligned-access:-mno-unaligned-access}.
>>>>
>>>> Attached patch fixes ARM predicate and several tests to correctly
>>>> handle the issue.
>>>>
>>>> The following targets were reg. tested for multiple targets (ARM,
>>>> Thumb-1, Thumb-2, x86, x86_64) with and without
>>>> -mno-unaligned-access. Analysis showed patch affects only vect.exp
>>>> tests so only vect.exp was tested.
>>>>
>>>> For x86, x86_64, ARM without -mno-unaligned-access, Thumb-2
>>>> without -mno-unaligned-access and Thumb-1 no regressions occured.
>>>> For ARM/Thumb2 with -mno-unaligned-access patch fixed most of
>>>> failures but triggered some problems (see attached log) for current
>>>> vect.exp tests:
>>>> 1) https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61887
>>>> 2) Some XPASS'es due to unexpected loop versioning (e.g.
>>>> gcc.dg/vect/pr33804.c).
>>>> 3) After predicate fix some passing tests which require unaligned
>>>> vector support become NA (this was expected).
>>>>
>>> Here is new version of patch and regression log. On the current
>>> trunk results are slightly different due to patches for Richard
>>> Biener (no UNRESOLVED fails) but some PASS->XPASS regressions still
>>> remain (see attachment):
>>>
>>> PASS->XPASS: gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
>>> scan-tree-dump-times vect "vectorized 1 loops" 1
>>> PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects
>>> scan-tree-dump-times vect "vectorized 1 loops" 1
>>> etc.
>>>
>>> These XPASS'es are due to code versioning: current GCC creates 2
>>> versions of loop: aligned and misaligned. It's look like they are
>>> slightly out of date at lest for ARM.
>>>
>>
>> On 07/24/2014 06:50 PM, Ramana Radhakrishnan wrote:
>>> This is redundant.
>>>
>>>> - || (defined(__ARMEL__) \
>>>> + || (defined(__ARM_FEATURE_UNALIGNED) \
>>>> + && defined(__ARMEL__) \
>>>> && (!defined(__thumb__) || defined(__thumb2__)))
>>> As is this line.
>>>
>>> I think you can restrict the check to defined(__ARM_FEATURE_UNALIGNED)
>>> && defined(__ARMEL__)
>>>
>>> __ARM_FEATURE_UNALIGNED should tell you whether unaligned access is
>>> allowed or not, therefore you should no longer require any specific
>>> "architectural" checks.
>>>
>>>
>>>> #error FOO
>>>> #endif
>>>>
>>> I'm not sure about the original intent of the tests right now.
>>>
>>> Ramana
>>>
>>
>> Thank you Ramana!
>>
>> --Marat
>
[-- Attachment #2: unalign3.diff --]
[-- Type: text/x-patch, Size: 2663 bytes --]
gcc/testsuite/ChangeLog:
2014-07-23 Marat Zakirov <m.zakirov@samsung.com>
* gcc.dg/vect/vect-109.c: Skip predicate added.
* gcc.dg/vect/vect-93.c: Test check fixed.
* gcc.dg/vect/bb-slp-10.c: Likewise.
* lib/target-supports.exp (check_effective_target_arm_vect_no_misalign):
Check unaligned feature.
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
index a1850ed..0090a4b 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
@@ -49,7 +49,7 @@ int main (void)
return 0;
}
-/* { dg-final { scan-tree-dump-times "unsupported alignment in basic block." 1 "slp2" { xfail vect_element_align } } } */
+/* { dg-final { scan-tree-dump "unsupported alignment in basic block." 1 "slp2" { xfail vect_element_align } } } */
/* { dg-final { scan-tree-dump-times "basic block vectorized" 1 "slp2" { target vect_element_align } } } */
/* { dg-final { cleanup-tree-dump "slp2" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/vect-109.c b/gcc/testsuite/gcc.dg/vect/vect-109.c
index 854c970..c671175 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-109.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-109.c
@@ -1,3 +1,4 @@
+/* { dg-skip-if "" { vect_no_align } } */
/* { dg-require-effective-target vect_int } */
#include <stdarg.h>
diff --git a/gcc/testsuite/gcc.dg/vect/vect-93.c b/gcc/testsuite/gcc.dg/vect/vect-93.c
index 65403eb..1065a6e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-93.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-93.c
@@ -79,7 +79,7 @@ int main (void)
/* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" { target vect_no_align } } } */
/* in main: */
-/* { dg-final { scan-tree-dump-times "vectorized 0 loops" 1 "vect" { target vect_no_align } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_no_align } } } */
/* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1 "vect" { xfail { vect_no_align } } } } */
/* { dg-final { cleanup-tree-dump "vect" } } */
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index db65ebe..35076d2 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -2293,8 +2293,8 @@ proc check_effective_target_arm_little_endian { } {
proc check_effective_target_arm_vect_no_misalign { } {
return [check_no_compiler_messages arm_vect_no_misalign assembly {
#if !defined(__arm__) \
- || (defined(__ARMEL__) \
- && (!defined(__thumb__) || defined(__thumb2__)))
+ || (defined(__ARM_FEATURE_UNALIGNED) \
+ && defined(__ARMEL__))
#error FOO
#endif
}]
[-- Attachment #3: arm_regs3.log --]
[-- Type: text/x-log, Size: 30736 bytes --]
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/gcc/gcc.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/gcc/gcc.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
NA->PASS: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump slp2 "unsupported alignment in basic block."
FAIL->NA: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "basic block vectorized" 1
XFAIL->NA: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "unsupported alignment in basic block." 1
NA->PASS: gcc.dg/vect/bb-slp-10.c scan-tree-dump slp2 "unsupported alignment in basic block."
FAIL->NA: gcc.dg/vect/bb-slp-10.c scan-tree-dump-times slp2 "basic block vectorized" 1
XFAIL->NA: gcc.dg/vect/bb-slp-10.c scan-tree-dump-times slp2 "unsupported alignment in basic block." 1
FAIL->NA: gcc.dg/vect/bb-slp-24.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-24.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-25.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-25.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-29.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-29.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->XFAIL: gcc.dg/vect/bb-slp-32.c -flto -ffat-lto-objects scan-tree-dump slp2 "vectorization is not profitable"
FAIL->XFAIL: gcc.dg/vect/bb-slp-32.c scan-tree-dump slp2 "vectorization is not profitable"
FAIL->XFAIL: gcc.dg/vect/bb-slp-9.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "basic block vectorized" 1
FAIL->XFAIL: gcc.dg/vect/bb-slp-9.c scan-tree-dump-times slp2 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-cond-1.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-cond-1.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-pattern-2.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-pattern-2.c scan-tree-dump-times slp1 "basic block vectorized" 1
PASS->XPASS: gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-6.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-6-global.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-8.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
NA->PASS: gcc.dg/vect/no-vfa-vect-43.c scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-57.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-61.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-1.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-2.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-3.c scan-tree-dump-times vect "vectorized 1 loops" 4
PASS->NA: gcc.dg/vect/O3-pr41881.c scan-tree-dump-times vect "vectorized 1 loops" 2
PASS->NA: gcc.dg/vect/O3-slp-reduc-10.c scan-tree-dump-times vect "vectorized 1 loops" 2
NA->PASS: gcc.dg/vect/pr16105.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr16105.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr20122.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr20122.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33953.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33953.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33953.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33953.c scan-tree-dump-times vect "vectorizing stmts using SLP" 1
FAIL->XFAIL: gcc.dg/vect/pr56787.c -flto -ffat-lto-objects scan-tree-dump vect "vectorized 1 loops"
FAIL->XFAIL: gcc.dg/vect/pr56787.c scan-tree-dump vect "vectorized 1 loops"
PASS->XPASS: gcc.dg/vect/pr58508.c -flto -ffat-lto-objects scan-tree-dump-times vect "hoist" 3
PASS->XPASS: gcc.dg/vect/pr58508.c scan-tree-dump-times vect "hoist" 3
PASS->NA: gcc.dg/vect/slp-23.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
PASS->NA: gcc.dg/vect/slp-23.c scan-tree-dump-times vect "vectorized 2 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2
NA->PASS: gcc.dg/vect/vect-105-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105-big-array.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->UNSUPPORTED: gcc.dg/vect/vect-109.c
PASS->NA: gcc.dg/vect/vect-109.c execution test
NA->UNSUPPORTED: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects
PASS->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects execution test
XFAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "not vectorized
FAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects (test for excess errors)
XFAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "not vectorized
FAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-109.c (test for excess errors)
NA->PASS: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-29.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-29.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-29.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-29.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-42.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->NA: gcc.dg/vect/vect-42.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
NA->PASS: gcc.dg/vect/vect-42.c scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->NA: gcc.dg/vect/vect-42.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-48.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-48.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-48.c scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-48.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-52.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-52.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-52.c scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-52.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
XPASS->PASS: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75-big-array.c scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75-big-array.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75.c scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-alignchecks.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-alignchecks.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-global.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-global.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-alignchecks.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-alignchecks.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-global.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-global.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
NA->PASS: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "vectorized 1 loops" 1
NA->PASS: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
NA->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 4
NA->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 0
XPASS->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
NA->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Alignment of access forced using versioning" 4
NA->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Vectorizing an unaligned access" 0
NA->PASS: gcc.dg/vect/vect-96.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->NA: gcc.dg/vect/vect-96.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-96.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->NA: gcc.dg/vect/vect-96.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-1.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-3.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-4.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->XPASS: gcc.dg/vect/vect-cselim-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/vect-cselim-1.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 4
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Alignment of access forced using peeling" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Vectorizing an unaligned access" 4
NA->PASS: gcc.dg/vect/vect-multitypes-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
NA->PASS: gcc.dg/vect/vect-multitypes-3.c scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-3.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 4
PASS->NA: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "Vectorizing an unaligned access" 4
NA->PASS: gcc.dg/vect/vect-multitypes-6.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-6.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 6
NA->PASS: gcc.dg/vect/vect-multitypes-6.c scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-6.c scan-tree-dump-times vect "Vectorizing an unaligned access" 6
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-1.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-2.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-2.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->XPASS: gcc.dg/vect/vect-outer-5.c -flto -ffat-lto-objects scan-tree-dump vect "zero step in outer loop."
PASS->XPASS: gcc.dg/vect/vect-outer-5.c scan-tree-dump vect "zero step in outer loop."
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-pre-interact.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-pre-interact.c scan-tree-dump-times vect "vectorized 1 loops" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/gfortran/gfortran.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/gfortran/gfortran.sum
Test Run By mzakirov on Thu Jul 24 19:17:06 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
NA->FAIL: gfortran.dg/vect/pr32380.f -O scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gfortran.dg/vect/pr32380.f -O scan-tree-dump-times vect "vectorized 5 loops" 1
FAIL->XFAIL: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 3
NA->PASS: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/g++/g++.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/g++/g++.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
PASS->NA: g++.dg/vect/pr36648.cc -std=c++11 scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++11 scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++1y scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++1y scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++98 scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++98 scan-tree-dump-times vect "vectorizing stmts using SLP" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libitm/testsuite/libitm.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libitm/testsuite/libitm.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libgomp/testsuite/libgomp.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libgomp/testsuite/libgomp.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libstdc++-v3/testsuite/libstdc++.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libstdc++-v3/testsuite/libstdc++.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libatomic/testsuite/libatomic.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libatomic/testsuite/libatomic.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PINGv3][PATCHv3] Fix vector tests on ARM platforms with disabled unaligned accesses
2014-08-07 8:52 ` [PINGv2][PATCHv3] " Marat Zakirov
@ 2014-08-14 13:40 ` Marat Zakirov
2014-08-21 15:05 ` [PINGv4][PATCHv3] " Marat Zakirov
0 siblings, 1 reply; 11+ messages in thread
From: Marat Zakirov @ 2014-08-14 13:40 UTC (permalink / raw)
To: gcc-patches; +Cc: Ramana Radhakrishnan, Cong Hou, Richard Biener, Yury Gribov
[-- Attachment #1: Type: text/plain, Size: 3161 bytes --]
On 08/07/2014 12:52 PM, Marat Zakirov wrote:
>
> On 07/31/2014 04:08 PM, Marat Zakirov wrote:
>>
>> On 07/24/2014 07:40 PM, Marat Zakirov wrote:
>>>
>>> On 07/24/2014 04:27 PM, Marat Zakirov wrote:
>>>>
>>>> On 07/23/2014 06:23 PM, Marat Zakirov wrote:
>>>>> Hi there!
>>>>>
>>>>> I made a patch which fixes regressions on ARM platforms with
>>>>> disabled unaligned accesses. The problem is that
>>>>> 'arm_vect_no_misalign' predicate do not check 'unaligned_access'
>>>>> global variable to determine whether unaligned access to vector
>>>>> are allowed. This leads to spurious vect.exp test fails when GCC
>>>>> is configured
>>>>> --with-specs=%{!munaligned-access:-mno-unaligned-access}.
>>>>>
>>>>> Attached patch fixes ARM predicate and several tests to correctly
>>>>> handle the issue.
>>>>>
>>>>> The following targets were reg. tested for multiple targets (ARM,
>>>>> Thumb-1, Thumb-2, x86, x86_64) with and without
>>>>> -mno-unaligned-access. Analysis showed patch affects only
>>>>> vect.exp tests so only vect.exp was tested.
>>>>>
>>>>> For x86, x86_64, ARM without -mno-unaligned-access, Thumb-2
>>>>> without -mno-unaligned-access and Thumb-1 no regressions occured.
>>>>> For ARM/Thumb2 with -mno-unaligned-access patch fixed most of
>>>>> failures but triggered some problems (see attached log) for
>>>>> current vect.exp tests:
>>>>> 1) https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61887
>>>>> 2) Some XPASS'es due to unexpected loop versioning (e.g.
>>>>> gcc.dg/vect/pr33804.c).
>>>>> 3) After predicate fix some passing tests which require unaligned
>>>>> vector support become NA (this was expected).
>>>>>
>>>> Here is new version of patch and regression log. On the current
>>>> trunk results are slightly different due to patches for Richard
>>>> Biener (no UNRESOLVED fails) but some PASS->XPASS regressions still
>>>> remain (see attachment):
>>>>
>>>> PASS->XPASS: gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
>>>> scan-tree-dump-times vect "vectorized 1 loops" 1
>>>> PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects
>>>> scan-tree-dump-times vect "vectorized 1 loops" 1
>>>> etc.
>>>>
>>>> These XPASS'es are due to code versioning: current GCC creates 2
>>>> versions of loop: aligned and misaligned. It's look like they are
>>>> slightly out of date at lest for ARM.
>>>>
>>>
>>> On 07/24/2014 06:50 PM, Ramana Radhakrishnan wrote:
>>>> This is redundant.
>>>>
>>>>> - || (defined(__ARMEL__) \
>>>>> + || (defined(__ARM_FEATURE_UNALIGNED) \
>>>>> + && defined(__ARMEL__) \
>>>>> && (!defined(__thumb__) || defined(__thumb2__)))
>>>> As is this line.
>>>>
>>>> I think you can restrict the check to defined(__ARM_FEATURE_UNALIGNED)
>>>> && defined(__ARMEL__)
>>>>
>>>> __ARM_FEATURE_UNALIGNED should tell you whether unaligned access is
>>>> allowed or not, therefore you should no longer require any specific
>>>> "architectural" checks.
>>>>
>>>>
>>>>> #error FOO
>>>>> #endif
>>>>>
>>>> I'm not sure about the original intent of the tests right now.
>>>>
>>>> Ramana
>>>>
>>>
>>> Thank you Ramana!
>>>
>>> --Marat
>>
>
[-- Attachment #2: unalign3.diff --]
[-- Type: text/x-patch, Size: 2663 bytes --]
gcc/testsuite/ChangeLog:
2014-07-23 Marat Zakirov <m.zakirov@samsung.com>
* gcc.dg/vect/vect-109.c: Skip predicate added.
* gcc.dg/vect/vect-93.c: Test check fixed.
* gcc.dg/vect/bb-slp-10.c: Likewise.
* lib/target-supports.exp (check_effective_target_arm_vect_no_misalign):
Check unaligned feature.
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
index a1850ed..0090a4b 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
@@ -49,7 +49,7 @@ int main (void)
return 0;
}
-/* { dg-final { scan-tree-dump-times "unsupported alignment in basic block." 1 "slp2" { xfail vect_element_align } } } */
+/* { dg-final { scan-tree-dump "unsupported alignment in basic block." 1 "slp2" { xfail vect_element_align } } } */
/* { dg-final { scan-tree-dump-times "basic block vectorized" 1 "slp2" { target vect_element_align } } } */
/* { dg-final { cleanup-tree-dump "slp2" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/vect-109.c b/gcc/testsuite/gcc.dg/vect/vect-109.c
index 854c970..c671175 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-109.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-109.c
@@ -1,3 +1,4 @@
+/* { dg-skip-if "" { vect_no_align } } */
/* { dg-require-effective-target vect_int } */
#include <stdarg.h>
diff --git a/gcc/testsuite/gcc.dg/vect/vect-93.c b/gcc/testsuite/gcc.dg/vect/vect-93.c
index 65403eb..1065a6e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-93.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-93.c
@@ -79,7 +79,7 @@ int main (void)
/* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" { target vect_no_align } } } */
/* in main: */
-/* { dg-final { scan-tree-dump-times "vectorized 0 loops" 1 "vect" { target vect_no_align } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_no_align } } } */
/* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1 "vect" { xfail { vect_no_align } } } } */
/* { dg-final { cleanup-tree-dump "vect" } } */
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index db65ebe..35076d2 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -2293,8 +2293,8 @@ proc check_effective_target_arm_little_endian { } {
proc check_effective_target_arm_vect_no_misalign { } {
return [check_no_compiler_messages arm_vect_no_misalign assembly {
#if !defined(__arm__) \
- || (defined(__ARMEL__) \
- && (!defined(__thumb__) || defined(__thumb2__)))
+ || (defined(__ARM_FEATURE_UNALIGNED) \
+ && defined(__ARMEL__))
#error FOO
#endif
}]
[-- Attachment #3: arm_regs3.log --]
[-- Type: text/x-log, Size: 30736 bytes --]
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/gcc/gcc.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/gcc/gcc.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
NA->PASS: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump slp2 "unsupported alignment in basic block."
FAIL->NA: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "basic block vectorized" 1
XFAIL->NA: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "unsupported alignment in basic block." 1
NA->PASS: gcc.dg/vect/bb-slp-10.c scan-tree-dump slp2 "unsupported alignment in basic block."
FAIL->NA: gcc.dg/vect/bb-slp-10.c scan-tree-dump-times slp2 "basic block vectorized" 1
XFAIL->NA: gcc.dg/vect/bb-slp-10.c scan-tree-dump-times slp2 "unsupported alignment in basic block." 1
FAIL->NA: gcc.dg/vect/bb-slp-24.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-24.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-25.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-25.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-29.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-29.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->XFAIL: gcc.dg/vect/bb-slp-32.c -flto -ffat-lto-objects scan-tree-dump slp2 "vectorization is not profitable"
FAIL->XFAIL: gcc.dg/vect/bb-slp-32.c scan-tree-dump slp2 "vectorization is not profitable"
FAIL->XFAIL: gcc.dg/vect/bb-slp-9.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "basic block vectorized" 1
FAIL->XFAIL: gcc.dg/vect/bb-slp-9.c scan-tree-dump-times slp2 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-cond-1.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-cond-1.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-pattern-2.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-pattern-2.c scan-tree-dump-times slp1 "basic block vectorized" 1
PASS->XPASS: gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-6.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-6-global.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-8.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
NA->PASS: gcc.dg/vect/no-vfa-vect-43.c scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-57.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-61.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-1.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-2.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-3.c scan-tree-dump-times vect "vectorized 1 loops" 4
PASS->NA: gcc.dg/vect/O3-pr41881.c scan-tree-dump-times vect "vectorized 1 loops" 2
PASS->NA: gcc.dg/vect/O3-slp-reduc-10.c scan-tree-dump-times vect "vectorized 1 loops" 2
NA->PASS: gcc.dg/vect/pr16105.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr16105.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr20122.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr20122.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33953.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33953.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33953.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33953.c scan-tree-dump-times vect "vectorizing stmts using SLP" 1
FAIL->XFAIL: gcc.dg/vect/pr56787.c -flto -ffat-lto-objects scan-tree-dump vect "vectorized 1 loops"
FAIL->XFAIL: gcc.dg/vect/pr56787.c scan-tree-dump vect "vectorized 1 loops"
PASS->XPASS: gcc.dg/vect/pr58508.c -flto -ffat-lto-objects scan-tree-dump-times vect "hoist" 3
PASS->XPASS: gcc.dg/vect/pr58508.c scan-tree-dump-times vect "hoist" 3
PASS->NA: gcc.dg/vect/slp-23.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
PASS->NA: gcc.dg/vect/slp-23.c scan-tree-dump-times vect "vectorized 2 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2
NA->PASS: gcc.dg/vect/vect-105-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105-big-array.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->UNSUPPORTED: gcc.dg/vect/vect-109.c
PASS->NA: gcc.dg/vect/vect-109.c execution test
NA->UNSUPPORTED: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects
PASS->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects execution test
XFAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "not vectorized
FAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects (test for excess errors)
XFAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "not vectorized
FAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-109.c (test for excess errors)
NA->PASS: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-29.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-29.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-29.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-29.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-42.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->NA: gcc.dg/vect/vect-42.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
NA->PASS: gcc.dg/vect/vect-42.c scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->NA: gcc.dg/vect/vect-42.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-48.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-48.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-48.c scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-48.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-52.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-52.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-52.c scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-52.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
XPASS->PASS: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75-big-array.c scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75-big-array.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75.c scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-alignchecks.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-alignchecks.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-global.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-global.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-alignchecks.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-alignchecks.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-global.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-global.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
NA->PASS: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "vectorized 1 loops" 1
NA->PASS: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
NA->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 4
NA->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 0
XPASS->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
NA->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Alignment of access forced using versioning" 4
NA->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Vectorizing an unaligned access" 0
NA->PASS: gcc.dg/vect/vect-96.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->NA: gcc.dg/vect/vect-96.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-96.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->NA: gcc.dg/vect/vect-96.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-1.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-3.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-4.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->XPASS: gcc.dg/vect/vect-cselim-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/vect-cselim-1.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 4
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Alignment of access forced using peeling" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Vectorizing an unaligned access" 4
NA->PASS: gcc.dg/vect/vect-multitypes-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
NA->PASS: gcc.dg/vect/vect-multitypes-3.c scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-3.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 4
PASS->NA: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "Vectorizing an unaligned access" 4
NA->PASS: gcc.dg/vect/vect-multitypes-6.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-6.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 6
NA->PASS: gcc.dg/vect/vect-multitypes-6.c scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-6.c scan-tree-dump-times vect "Vectorizing an unaligned access" 6
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-1.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-2.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-2.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->XPASS: gcc.dg/vect/vect-outer-5.c -flto -ffat-lto-objects scan-tree-dump vect "zero step in outer loop."
PASS->XPASS: gcc.dg/vect/vect-outer-5.c scan-tree-dump vect "zero step in outer loop."
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-pre-interact.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-pre-interact.c scan-tree-dump-times vect "vectorized 1 loops" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/gfortran/gfortran.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/gfortran/gfortran.sum
Test Run By mzakirov on Thu Jul 24 19:17:06 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
NA->FAIL: gfortran.dg/vect/pr32380.f -O scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gfortran.dg/vect/pr32380.f -O scan-tree-dump-times vect "vectorized 5 loops" 1
FAIL->XFAIL: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 3
NA->PASS: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/g++/g++.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/g++/g++.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
PASS->NA: g++.dg/vect/pr36648.cc -std=c++11 scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++11 scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++1y scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++1y scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++98 scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++98 scan-tree-dump-times vect "vectorizing stmts using SLP" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libitm/testsuite/libitm.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libitm/testsuite/libitm.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libgomp/testsuite/libgomp.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libgomp/testsuite/libgomp.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libstdc++-v3/testsuite/libstdc++.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libstdc++-v3/testsuite/libstdc++.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libatomic/testsuite/libatomic.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libatomic/testsuite/libatomic.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PINGv4][PATCHv3] Fix vector tests on ARM platforms with disabled unaligned accesses
2014-08-14 13:40 ` [PINGv3][PATCHv3] " Marat Zakirov
@ 2014-08-21 15:05 ` Marat Zakirov
2014-09-04 11:14 ` Ramana Radhakrishnan
0 siblings, 1 reply; 11+ messages in thread
From: Marat Zakirov @ 2014-08-21 15:05 UTC (permalink / raw)
To: gcc-patches; +Cc: Ramana Radhakrishnan, Cong Hou, Richard Biener, Yury Gribov
[-- Attachment #1: Type: text/plain, Size: 3302 bytes --]
On 08/14/2014 05:40 PM, Marat Zakirov wrote:
>
> On 08/07/2014 12:52 PM, Marat Zakirov wrote:
>>
>> On 07/31/2014 04:08 PM, Marat Zakirov wrote:
>>>
>>> On 07/24/2014 07:40 PM, Marat Zakirov wrote:
>>>>
>>>> On 07/24/2014 04:27 PM, Marat Zakirov wrote:
>>>>>
>>>>> On 07/23/2014 06:23 PM, Marat Zakirov wrote:
>>>>>> Hi there!
>>>>>>
>>>>>> I made a patch which fixes regressions on ARM platforms with
>>>>>> disabled unaligned accesses. The problem is that
>>>>>> 'arm_vect_no_misalign' predicate do not check 'unaligned_access'
>>>>>> global variable to determine whether unaligned access to vector
>>>>>> are allowed. This leads to spurious vect.exp test fails when GCC
>>>>>> is configured
>>>>>> --with-specs=%{!munaligned-access:-mno-unaligned-access}.
>>>>>>
>>>>>> Attached patch fixes ARM predicate and several tests to correctly
>>>>>> handle the issue.
>>>>>>
>>>>>> The following targets were reg. tested for multiple targets (ARM,
>>>>>> Thumb-1, Thumb-2, x86, x86_64) with and without
>>>>>> -mno-unaligned-access. Analysis showed patch affects only
>>>>>> vect.exp tests so only vect.exp was tested.
>>>>>>
>>>>>> For x86, x86_64, ARM without -mno-unaligned-access, Thumb-2
>>>>>> without -mno-unaligned-access and Thumb-1 no regressions occured.
>>>>>> For ARM/Thumb2 with -mno-unaligned-access patch fixed most of
>>>>>> failures but triggered some problems (see attached log) for
>>>>>> current vect.exp tests:
>>>>>> 1) https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61887
>>>>>> 2) Some XPASS'es due to unexpected loop versioning (e.g.
>>>>>> gcc.dg/vect/pr33804.c).
>>>>>> 3) After predicate fix some passing tests which require unaligned
>>>>>> vector support become NA (this was expected).
>>>>>>
>>>>> Here is new version of patch and regression log. On the current
>>>>> trunk results are slightly different due to patches for Richard
>>>>> Biener (no UNRESOLVED fails) but some PASS->XPASS regressions
>>>>> still remain (see attachment):
>>>>>
>>>>> PASS->XPASS: gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
>>>>> scan-tree-dump-times vect "vectorized 1 loops" 1
>>>>> PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects
>>>>> scan-tree-dump-times vect "vectorized 1 loops" 1
>>>>> etc.
>>>>>
>>>>> These XPASS'es are due to code versioning: current GCC creates 2
>>>>> versions of loop: aligned and misaligned. It's look like they are
>>>>> slightly out of date at lest for ARM.
>>>>>
>>>>
>>>> On 07/24/2014 06:50 PM, Ramana Radhakrishnan wrote:
>>>>> This is redundant.
>>>>>
>>>>>> - || (defined(__ARMEL__) \
>>>>>> + || (defined(__ARM_FEATURE_UNALIGNED) \
>>>>>> + && defined(__ARMEL__) \
>>>>>> && (!defined(__thumb__) || defined(__thumb2__)))
>>>>> As is this line.
>>>>>
>>>>> I think you can restrict the check to
>>>>> defined(__ARM_FEATURE_UNALIGNED)
>>>>> && defined(__ARMEL__)
>>>>>
>>>>> __ARM_FEATURE_UNALIGNED should tell you whether unaligned access is
>>>>> allowed or not, therefore you should no longer require any specific
>>>>> "architectural" checks.
>>>>>
>>>>>
>>>>>> #error FOO
>>>>>> #endif
>>>>>>
>>>>> I'm not sure about the original intent of the tests right now.
>>>>>
>>>>> Ramana
>>>>>
>>>>
>>>> Thank you Ramana!
>>>>
>>>> --Marat
>>>
>>
>
[-- Attachment #2: unalign3.diff --]
[-- Type: text/x-patch, Size: 2663 bytes --]
gcc/testsuite/ChangeLog:
2014-07-23 Marat Zakirov <m.zakirov@samsung.com>
* gcc.dg/vect/vect-109.c: Skip predicate added.
* gcc.dg/vect/vect-93.c: Test check fixed.
* gcc.dg/vect/bb-slp-10.c: Likewise.
* lib/target-supports.exp (check_effective_target_arm_vect_no_misalign):
Check unaligned feature.
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
index a1850ed..0090a4b 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
@@ -49,7 +49,7 @@ int main (void)
return 0;
}
-/* { dg-final { scan-tree-dump-times "unsupported alignment in basic block." 1 "slp2" { xfail vect_element_align } } } */
+/* { dg-final { scan-tree-dump "unsupported alignment in basic block." 1 "slp2" { xfail vect_element_align } } } */
/* { dg-final { scan-tree-dump-times "basic block vectorized" 1 "slp2" { target vect_element_align } } } */
/* { dg-final { cleanup-tree-dump "slp2" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/vect-109.c b/gcc/testsuite/gcc.dg/vect/vect-109.c
index 854c970..c671175 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-109.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-109.c
@@ -1,3 +1,4 @@
+/* { dg-skip-if "" { vect_no_align } } */
/* { dg-require-effective-target vect_int } */
#include <stdarg.h>
diff --git a/gcc/testsuite/gcc.dg/vect/vect-93.c b/gcc/testsuite/gcc.dg/vect/vect-93.c
index 65403eb..1065a6e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-93.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-93.c
@@ -79,7 +79,7 @@ int main (void)
/* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" { target vect_no_align } } } */
/* in main: */
-/* { dg-final { scan-tree-dump-times "vectorized 0 loops" 1 "vect" { target vect_no_align } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_no_align } } } */
/* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1 "vect" { xfail { vect_no_align } } } } */
/* { dg-final { cleanup-tree-dump "vect" } } */
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index db65ebe..35076d2 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -2293,8 +2293,8 @@ proc check_effective_target_arm_little_endian { } {
proc check_effective_target_arm_vect_no_misalign { } {
return [check_no_compiler_messages arm_vect_no_misalign assembly {
#if !defined(__arm__) \
- || (defined(__ARMEL__) \
- && (!defined(__thumb__) || defined(__thumb2__)))
+ || (defined(__ARM_FEATURE_UNALIGNED) \
+ && defined(__ARMEL__))
#error FOO
#endif
}]
[-- Attachment #3: arm_regs3.log --]
[-- Type: text/x-log, Size: 30736 bytes --]
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/gcc/gcc.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/gcc/gcc.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
NA->PASS: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump slp2 "unsupported alignment in basic block."
FAIL->NA: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "basic block vectorized" 1
XFAIL->NA: gcc.dg/vect/bb-slp-10.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "unsupported alignment in basic block." 1
NA->PASS: gcc.dg/vect/bb-slp-10.c scan-tree-dump slp2 "unsupported alignment in basic block."
FAIL->NA: gcc.dg/vect/bb-slp-10.c scan-tree-dump-times slp2 "basic block vectorized" 1
XFAIL->NA: gcc.dg/vect/bb-slp-10.c scan-tree-dump-times slp2 "unsupported alignment in basic block." 1
FAIL->NA: gcc.dg/vect/bb-slp-24.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-24.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-25.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-25.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-29.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-29.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->XFAIL: gcc.dg/vect/bb-slp-32.c -flto -ffat-lto-objects scan-tree-dump slp2 "vectorization is not profitable"
FAIL->XFAIL: gcc.dg/vect/bb-slp-32.c scan-tree-dump slp2 "vectorization is not profitable"
FAIL->XFAIL: gcc.dg/vect/bb-slp-9.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "basic block vectorized" 1
FAIL->XFAIL: gcc.dg/vect/bb-slp-9.c scan-tree-dump-times slp2 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-cond-1.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-cond-1.c scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-pattern-2.c -flto -ffat-lto-objects scan-tree-dump-times slp1 "basic block vectorized" 1
FAIL->NA: gcc.dg/vect/bb-slp-pattern-2.c scan-tree-dump-times slp1 "basic block vectorized" 1
PASS->XPASS: gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-6.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-6-global.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
FAIL->XFAIL: gcc.dg/vect/no-scevccp-outer-8.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED." 1
NA->PASS: gcc.dg/vect/no-vfa-vect-43.c scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-57.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-61.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-1.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-2.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/no-vfa-vect-depend-3.c scan-tree-dump-times vect "vectorized 1 loops" 4
PASS->NA: gcc.dg/vect/O3-pr41881.c scan-tree-dump-times vect "vectorized 1 loops" 2
PASS->NA: gcc.dg/vect/O3-slp-reduc-10.c scan-tree-dump-times vect "vectorized 1 loops" 2
NA->PASS: gcc.dg/vect/pr16105.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr16105.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr20122.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/pr20122.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33953.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33953.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->XPASS: gcc.dg/vect/pr33953.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/pr33953.c scan-tree-dump-times vect "vectorizing stmts using SLP" 1
FAIL->XFAIL: gcc.dg/vect/pr56787.c -flto -ffat-lto-objects scan-tree-dump vect "vectorized 1 loops"
FAIL->XFAIL: gcc.dg/vect/pr56787.c scan-tree-dump vect "vectorized 1 loops"
PASS->XPASS: gcc.dg/vect/pr58508.c -flto -ffat-lto-objects scan-tree-dump-times vect "hoist" 3
PASS->XPASS: gcc.dg/vect/pr58508.c scan-tree-dump-times vect "hoist" 3
PASS->NA: gcc.dg/vect/slp-23.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
PASS->NA: gcc.dg/vect/slp-23.c scan-tree-dump-times vect "vectorized 2 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24-big-array.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 2
PASS->XPASS: gcc.dg/vect/slp-24.c scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/slp-24.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2
NA->PASS: gcc.dg/vect/vect-105-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105-big-array.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->PASS: gcc.dg/vect/vect-105.c scan-tree-dump-times vect "Alignment of access forced using versioning" 2
NA->UNSUPPORTED: gcc.dg/vect/vect-109.c
PASS->NA: gcc.dg/vect/vect-109.c execution test
NA->UNSUPPORTED: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects
PASS->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects execution test
XFAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "not vectorized
FAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-109.c -flto -ffat-lto-objects (test for excess errors)
XFAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "not vectorized
FAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-109.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-109.c (test for excess errors)
NA->PASS: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-27.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-29.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-29.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-29.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-29.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-42.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->NA: gcc.dg/vect/vect-42.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
NA->PASS: gcc.dg/vect/vect-42.c scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->NA: gcc.dg/vect/vect-42.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-44.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-48.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-48.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-48.c scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-48.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-50.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gcc.dg/vect/vect-50.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-52.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-52.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 2
NA->PASS: gcc.dg/vect/vect-52.c scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gcc.dg/vect/vect-52.c scan-tree-dump-times vect "Vectorizing an unaligned access" 2
XPASS->PASS: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-56.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-56.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-60.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->NA: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gcc.dg/vect/vect-60.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-72.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75-big-array.c scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75-big-array.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-75.c scan-tree-dump-times vect "Alignment of access forced using versioning" 1
FAIL->XFAIL: gcc.dg/vect/vect-75.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-alignchecks.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-alignchecks.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-77-global.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-77-global.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-alignchecks.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-alignchecks.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-alignchecks.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-global.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-78-global.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->XFAIL: gcc.dg/vect/vect-78-global.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
NA->PASS: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-93.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "vectorized 1 loops" 1
NA->PASS: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "vectorized 2 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-93.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
XPASS->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
NA->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 4
NA->PASS: gcc.dg/vect/vect-95.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 0
XPASS->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
NA->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Alignment of access forced using versioning" 4
NA->PASS: gcc.dg/vect/vect-95.c scan-tree-dump-times vect "Vectorizing an unaligned access" 0
NA->PASS: gcc.dg/vect/vect-96.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->NA: gcc.dg/vect/vect-96.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
NA->PASS: gcc.dg/vect/vect-96.c scan-tree-dump-times vect "Alignment of access forced using versioning." 1
FAIL->NA: gcc.dg/vect/vect-96.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-1.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-3.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-cond-4.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->XPASS: gcc.dg/vect/vect-cselim-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->XPASS: gcc.dg/vect/vect-cselim-1.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 4
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Alignment of access forced using peeling" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Vectorizing an unaligned access" 4
NA->PASS: gcc.dg/vect/vect-multitypes-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 3
NA->PASS: gcc.dg/vect/vect-multitypes-3.c scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-3.c scan-tree-dump-times vect "Vectorizing an unaligned access" 3
PASS->NA: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-multitypes-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 4
PASS->NA: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "Alignment of access forced using peeling" 0
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "vectorized 1 loops" 2
FAIL->NA: gcc.dg/vect/vect-multitypes-4.c scan-tree-dump-times vect "Vectorizing an unaligned access" 4
NA->PASS: gcc.dg/vect/vect-multitypes-6.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-6.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 6
NA->PASS: gcc.dg/vect/vect-multitypes-6.c scan-tree-dump-times vect "Alignment of access forced using versioning" 6
FAIL->XFAIL: gcc.dg/vect/vect-multitypes-6.c scan-tree-dump-times vect "Vectorizing an unaligned access" 6
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-1.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-2.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-nest-cycle-2.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
FAIL->XFAIL: gcc.dg/vect/vect-outer-3a.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->NA: gcc.dg/vect/vect-outer-4c.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 1
PASS->XPASS: gcc.dg/vect/vect-outer-5.c -flto -ffat-lto-objects scan-tree-dump vect "zero step in outer loop."
PASS->XPASS: gcc.dg/vect/vect-outer-5.c scan-tree-dump vect "zero step in outer loop."
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb-big-array.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb-big-array.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb.c -flto -ffat-lto-objects scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-outer-fir-lb.c scan-tree-dump-times vect "OUTER LOOP VECTORIZED" 2
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c -flto -ffat-lto-objects scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-peel-4.c scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gcc.dg/vect/vect-pre-interact.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->XFAIL: gcc.dg/vect/vect-pre-interact.c scan-tree-dump-times vect "vectorized 1 loops" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/gfortran/gfortran.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/gfortran/gfortran.sum
Test Run By mzakirov on Thu Jul 24 19:17:06 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
NA->FAIL: gfortran.dg/vect/pr32380.f -O scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL->NA: gfortran.dg/vect/pr32380.f -O scan-tree-dump-times vect "vectorized 5 loops" 1
FAIL->XFAIL: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 3
NA->PASS: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning." 3
FAIL->XFAIL: gfortran.dg/vect/vect-2.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 2
FAIL->XFAIL: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning" 3
FAIL->XFAIL: gfortran.dg/vect/vect-3.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
FAIL->XFAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
FAIL->XFAIL: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Alignment of access forced using peeling" 1
NA->PASS: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Alignment of access forced using versioning." 2
FAIL->XFAIL: gfortran.dg/vect/vect-5.f90 -O scan-tree-dump-times vect "Vectorizing an unaligned access" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./gcc/testsuite/g++/g++.sum
Test Run By mzakirov on Thu Jul 24 11:47:42 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./gcc/testsuite/g++/g++.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is x86_64-pc-linux-gnu
PASS->NA: g++.dg/vect/pr36648.cc -std=c++11 scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++11 scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++1y scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++1y scan-tree-dump-times vect "vectorizing stmts using SLP" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++98 scan-tree-dump-times vect "vectorized 1 loops" 1
PASS->NA: g++.dg/vect/pr36648.cc -std=c++98 scan-tree-dump-times vect "vectorizing stmts using SLP" 1
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libitm/testsuite/libitm.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libitm/testsuite/libitm.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libgomp/testsuite/libgomp.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libgomp/testsuite/libgomp.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libstdc++-v3/testsuite/libstdc++.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libstdc++-v3/testsuite/libstdc++.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
dg-cmp-results.sh: Verbosity is 2, Variant is "target-sim"
Older log file: ./arm-v7a15v5r2-linux-gnueabi/libatomic/testsuite/libatomic.sum
Test Run By mzakirov on Thu Jul 24 11:47:41 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
Newer log file: /home/mzakirov/proj/gcc_unalign/build.arm.cortex-a15/obj/gcc_final/./arm-v7a15v5r2-linux-gnueabi/libatomic/testsuite/libatomic.sum
Test Run By mzakirov on Thu Jul 24 19:17:05 2014
Target is arm-v7a15v5r2-linux-gnueabi
Host is arm-v7a15v5r2-linux-gnueabi
Build is x86_64-pc-linux-gnu
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PINGv4][PATCHv3] Fix vector tests on ARM platforms with disabled unaligned accesses
2014-08-21 15:05 ` [PINGv4][PATCHv3] " Marat Zakirov
@ 2014-09-04 11:14 ` Ramana Radhakrishnan
2014-09-04 17:24 ` Mike Stump
0 siblings, 1 reply; 11+ messages in thread
From: Ramana Radhakrishnan @ 2014-09-04 11:14 UTC (permalink / raw)
To: Marat Zakirov
Cc: gcc-patches, Ramana Radhakrishnan, Cong Hou, Richard Biener,
Yury Gribov, Mike Stump
On Thu, Aug 21, 2014 at 4:05 PM, Marat Zakirov <m.zakirov@samsung.com> wrote:
>
> On 08/14/2014 05:40 PM, Marat Zakirov wrote:
>>
>>
>> On 08/07/2014 12:52 PM, Marat Zakirov wrote:
>>>
>>>
>>> On 07/31/2014 04:08 PM, Marat Zakirov wrote:
>>>>
>>>>
>>>> On 07/24/2014 07:40 PM, Marat Zakirov wrote:
>>>>>
>>>>>
>>>>> On 07/24/2014 04:27 PM, Marat Zakirov wrote:
>>>>>>
>>>>>>
>>>>>> On 07/23/2014 06:23 PM, Marat Zakirov wrote:
>>>>>>>
>>>>>>> Hi there!
>>>>>>>
>>>>>>> I made a patch which fixes regressions on ARM platforms with disabled
>>>>>>> unaligned accesses. The problem is that 'arm_vect_no_misalign' predicate do
>>>>>>> not check 'unaligned_access' global variable to determine whether unaligned
>>>>>>> access to vector are allowed. This leads to spurious vect.exp test fails
>>>>>>> when GCC is configured
>>>>>>> --with-specs=%{!munaligned-access:-mno-unaligned-access}.
>>>>>>>
>>>>>>> Attached patch fixes ARM predicate and several tests to correctly
>>>>>>> handle the issue.
>>>>>>>
>>>>>>> The following targets were reg. tested for multiple targets (ARM,
>>>>>>> Thumb-1, Thumb-2, x86, x86_64) with and without -mno-unaligned-access.
>>>>>>> Analysis showed patch affects only vect.exp tests so only vect.exp was
>>>>>>> tested.
>>>>>>>
>>>>>>> For x86, x86_64, ARM without -mno-unaligned-access, Thumb-2 without
>>>>>>> -mno-unaligned-access and Thumb-1 no regressions occured. For ARM/Thumb2
>>>>>>> with -mno-unaligned-access patch fixed most of failures but triggered some
>>>>>>> problems (see attached log) for current vect.exp tests:
>>>>>>> 1) https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61887
>>>>>>> 2) Some XPASS'es due to unexpected loop versioning (e.g.
>>>>>>> gcc.dg/vect/pr33804.c).
>>>>>>> 3) After predicate fix some passing tests which require unaligned
>>>>>>> vector support become NA (this was expected).
>>>>>>>
>>>>>> Here is new version of patch and regression log. On the current trunk
>>>>>> results are slightly different due to patches for Richard Biener (no
>>>>>> UNRESOLVED fails) but some PASS->XPASS regressions still remain (see
>>>>>> attachment):
>>>>>>
>>>>>> PASS->XPASS: gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
>>>>>> scan-tree-dump-times vect "vectorized 1 loops" 1
>>>>>> PASS->XPASS: gcc.dg/vect/pr33804.c -flto -ffat-lto-objects
>>>>>> scan-tree-dump-times vect "vectorized 1 loops" 1
>>>>>> etc.
>>>>>>
>>>>>> These XPASS'es are due to code versioning: current GCC creates 2
>>>>>> versions of loop: aligned and misaligned. It's look like they are slightly
>>>>>> out of date at lest for ARM.
>>>>>>
>>>>>
>>>>> On 07/24/2014 06:50 PM, Ramana Radhakrishnan wrote:
>>>>>>
>>>>>> This is redundant.
>>>>>>
>>>>>>> - || (defined(__ARMEL__) \
>>>>>>> + || (defined(__ARM_FEATURE_UNALIGNED) \
>>>>>>> + && defined(__ARMEL__) \
>>>>>>> && (!defined(__thumb__) || defined(__thumb2__)))
>>>>>>
>>>>>> As is this line.
>>>>>>
>>>>>> I think you can restrict the check to defined(__ARM_FEATURE_UNALIGNED)
>>>>>> && defined(__ARMEL__)
>>>>>>
>>>>>> __ARM_FEATURE_UNALIGNED should tell you whether unaligned access is
>>>>>> allowed or not, therefore you should no longer require any specific
>>>>>> "architectural" checks.
>>>>>>
>>>>>>
>>>>>>> #error FOO
>>>>>>> #endif
>>>>>>>
>>>>>> I'm not sure about the original intent of the tests right now.
>>>>>>
>>>>>> Ramana
>>>>>>
>>>>>
>>>>> Thank you Ramana!
>>>>>
>>>>> --Marat
>>>>
>>>>
>>>
>>
>
>
> gcc/testsuite/ChangeLog:
>
> 2014-07-23 Marat Zakirov <m.zakirov@samsung.com>
>
> * gcc.dg/vect/vect-109.c: Skip predicate added.
> * gcc.dg/vect/vect-93.c: Test check fixed.
> * gcc.dg/vect/bb-slp-10.c: Likewise.
> * lib/target-supports.exp
> (check_effective_target_arm_vect_no_misalign):
> Check unaligned feature.
>
> diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
> b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
> index a1850ed..0090a4b 100644
> --- a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
> +++ b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
> @@ -49,7 +49,7 @@ int main (void)
> return 0;
> }
>
> -/* { dg-final { scan-tree-dump-times "unsupported alignment in basic
> block." 1 "slp2" { xfail vect_element_align } } } */
> +/* { dg-final { scan-tree-dump "unsupported alignment in basic block." 1
> "slp2" { xfail vect_element_align } } } */
> /* { dg-final { scan-tree-dump-times "basic block vectorized" 1 "slp2" {
> target vect_element_align } } } */
> /* { dg-final { cleanup-tree-dump "slp2" } } */
>
> diff --git a/gcc/testsuite/gcc.dg/vect/vect-109.c
> b/gcc/testsuite/gcc.dg/vect/vect-109.c
> index 854c970..c671175 100644
> --- a/gcc/testsuite/gcc.dg/vect/vect-109.c
> +++ b/gcc/testsuite/gcc.dg/vect/vect-109.c
> @@ -1,3 +1,4 @@
> +/* { dg-skip-if "" { vect_no_align } } */
> /* { dg-require-effective-target vect_int } */
>
> #include <stdarg.h>
> diff --git a/gcc/testsuite/gcc.dg/vect/vect-93.c
> b/gcc/testsuite/gcc.dg/vect/vect-93.c
> index 65403eb..1065a6e 100644
> --- a/gcc/testsuite/gcc.dg/vect/vect-93.c
> +++ b/gcc/testsuite/gcc.dg/vect/vect-93.c
> @@ -79,7 +79,7 @@ int main (void)
> /* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" { target
> vect_no_align } } } */
>
> /* in main: */
> -/* { dg-final { scan-tree-dump-times "vectorized 0 loops" 1 "vect" { target
> vect_no_align } } } */
> +/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target
> vect_no_align } } } */
> /* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1
> "vect" { xfail { vect_no_align } } } } */
>
> /* { dg-final { cleanup-tree-dump "vect" } } */
> diff --git a/gcc/testsuite/lib/target-supports.exp
> b/gcc/testsuite/lib/target-supports.exp
> index db65ebe..35076d2 100644
> --- a/gcc/testsuite/lib/target-supports.exp
> +++ b/gcc/testsuite/lib/target-supports.exp
> @@ -2293,8 +2293,8 @@ proc check_effective_target_arm_little_endian { } {
> proc check_effective_target_arm_vect_no_misalign { } {
> return [check_no_compiler_messages arm_vect_no_misalign assembly {
> #if !defined(__arm__) \
> - || (defined(__ARMEL__) \
> - && (!defined(__thumb__) || defined(__thumb2__)))
> + || (defined(__ARM_FEATURE_UNALIGNED) \
> + && defined(__ARMEL__))
> #error FOO
> #endif
> }]
>
Ok by me. But please wait for a testsuite maintainer to approve.
regards
Ramana
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PINGv4][PATCHv3] Fix vector tests on ARM platforms with disabled unaligned accesses
2014-09-04 11:14 ` Ramana Radhakrishnan
@ 2014-09-04 17:24 ` Mike Stump
2014-09-05 13:06 ` Marat Zakirov
0 siblings, 1 reply; 11+ messages in thread
From: Mike Stump @ 2014-09-04 17:24 UTC (permalink / raw)
To: ramrad01
Cc: Marat Zakirov, gcc-patches, Ramana Radhakrishnan, Cong Hou,
Richard Biener, Yury Gribov
On Sep 4, 2014, at 4:14 AM, Ramana Radhakrishnan <ramana.gcc@googlemail.com> wrote:
>> --- a/gcc/testsuite/lib/target-supports.exp
>> +++ b/gcc/testsuite/lib/target-supports.exp
>> @@ -2293,8 +2293,8 @@ proc check_effective_target_arm_little_endian { } {
>> proc check_effective_target_arm_vect_no_misalign { } {
>> return [check_no_compiler_messages arm_vect_no_misalign assembly {
>> #if !defined(__arm__) \
>> - || (defined(__ARMEL__) \
>> - && (!defined(__thumb__) || defined(__thumb2__)))
>> + || (defined(__ARM_FEATURE_UNALIGNED) \
>> + && defined(__ARMEL__))
>> #error FOO
>> #endif
>> }]
>>
>
> Ok by me. But please wait for a testsuite maintainer to approve.
Ok.
Generally the port people that have been around for a while know what strikes them as wrong or not and can just approve the patch directly. I suspect you are one of those people. :-) If you have any doubts or concerns, you can always raise them or ask for some help reviewing. Don’t worry, if I spot something I don’t like after someone else says Ok, I will bring up the issue for consideration. Even if I do, it doesn’t mean I object in anyway to the first review.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PINGv4][PATCHv3] Fix vector tests on ARM platforms with disabled unaligned accesses
2014-09-04 17:24 ` Mike Stump
@ 2014-09-05 13:06 ` Marat Zakirov
0 siblings, 0 replies; 11+ messages in thread
From: Marat Zakirov @ 2014-09-05 13:06 UTC (permalink / raw)
To: Mike Stump, ramrad01
Cc: gcc-patches, Ramana Radhakrishnan, Cong Hou, Richard Biener, Yury Gribov
[-- Attachment #1: Type: text/plain, Size: 1345 bytes --]
On 09/04/2014 09:23 PM, Mike Stump wrote:
> On Sep 4, 2014, at 4:14 AM, Ramana Radhakrishnan <ramana.gcc@googlemail.com> wrote:
>>> --- a/gcc/testsuite/lib/target-supports.exp
>>> +++ b/gcc/testsuite/lib/target-supports.exp
>>> @@ -2293,8 +2293,8 @@ proc check_effective_target_arm_little_endian { } {
>>> proc check_effective_target_arm_vect_no_misalign { } {
>>> return [check_no_compiler_messages arm_vect_no_misalign assembly {
>>> #if !defined(__arm__) \
>>> - || (defined(__ARMEL__) \
>>> - && (!defined(__thumb__) || defined(__thumb2__)))
>>> + || (defined(__ARM_FEATURE_UNALIGNED) \
>>> + && defined(__ARMEL__))
>>> #error FOO
>>> #endif
>>> }]
>>>
>> Ok by me. But please wait for a testsuite maintainer to approve.
> Ok.
>
> Generally the port people that have been around for a while know what strikes them as wrong or not and can just approve the patch directly. I suspect you are one of those people. :-) If you have any doubts or concerns, you can always raise them or ask for some help reviewing. DonÂ’t worry, if I spot something I donÂ’t like after someone else says Ok, I will bring up the issue for consideration. Even if I do, it doesnÂ’t mean I object in anyway to the first review.
Thank you all.
Committed revision 214956.
--Marat
[-- Attachment #2: unalign3.diff --]
[-- Type: text/x-patch, Size: 2661 bytes --]
gcc/testsuite/ChangeLog:
2014-07-23 Marat Zakirov <m.zakirov@samsung.com>
* gcc.dg/vect/vect-109.c: Skip predicate added.
* gcc.dg/vect/vect-93.c: Test check fixed.
* gcc.dg/vect/bb-slp-10.c: Likewise.
* lib/target-supports.exp (check_effective_target_arm_vect_no_misalign):
Check unaligned feature.
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
index a1850ed..0090a4b 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-10.c
@@ -49,7 +49,7 @@ int main (void)
return 0;
}
-/* { dg-final { scan-tree-dump-times "unsupported alignment in basic block." 1 "slp2" { xfail vect_element_align } } } */
+/* { dg-final { scan-tree-dump "unsupported alignment in basic block." "slp2" { xfail vect_element_align } } } */
/* { dg-final { scan-tree-dump-times "basic block vectorized" 1 "slp2" { target vect_element_align } } } */
/* { dg-final { cleanup-tree-dump "slp2" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/vect-109.c b/gcc/testsuite/gcc.dg/vect/vect-109.c
index 854c970..c671175 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-109.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-109.c
@@ -1,3 +1,4 @@
+/* { dg-skip-if "" { vect_no_align } } */
/* { dg-require-effective-target vect_int } */
#include <stdarg.h>
diff --git a/gcc/testsuite/gcc.dg/vect/vect-93.c b/gcc/testsuite/gcc.dg/vect/vect-93.c
index 65403eb..1065a6e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-93.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-93.c
@@ -79,7 +79,7 @@ int main (void)
/* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" { target vect_no_align } } } */
/* in main: */
-/* { dg-final { scan-tree-dump-times "vectorized 0 loops" 1 "vect" { target vect_no_align } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_no_align } } } */
/* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1 "vect" { xfail { vect_no_align } } } } */
/* { dg-final { cleanup-tree-dump "vect" } } */
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index db65ebe..35076d2 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -2293,8 +2293,8 @@ proc check_effective_target_arm_little_endian { } {
proc check_effective_target_arm_vect_no_misalign { } {
return [check_no_compiler_messages arm_vect_no_misalign assembly {
#if !defined(__arm__) \
- || (defined(__ARMEL__) \
- && (!defined(__thumb__) || defined(__thumb2__)))
+ || (defined(__ARM_FEATURE_UNALIGNED) \
+ && defined(__ARMEL__))
#error FOO
#endif
}]
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2014-09-05 13:06 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-07-23 14:27 [PATCH] Fix vector tests on ARM platforms with disabled unaligned accesses Marat Zakirov
2014-07-24 12:36 ` [PATCHv2] " Marat Zakirov
2014-07-24 15:44 ` [PATCHv3] " Marat Zakirov
2014-07-31 12:21 ` [PING][PATCHv3] " Marat Zakirov
2014-08-07 8:52 ` [PINGv2][PATCHv3] " Marat Zakirov
2014-08-14 13:40 ` [PINGv3][PATCHv3] " Marat Zakirov
2014-08-21 15:05 ` [PINGv4][PATCHv3] " Marat Zakirov
2014-09-04 11:14 ` Ramana Radhakrishnan
2014-09-04 17:24 ` Mike Stump
2014-09-05 13:06 ` Marat Zakirov
2014-07-24 15:31 ` [PATCH] " Ramana Radhakrishnan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).