[to-be-committed] [RISC-V] Improve (1 << N) | C for rv64
[official-gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / gen-vect-32.c
blob62d2b5049fd902047540b90a2ef79b789f903969
1 /* { dg-do run { target vect_cmdline_needed } } */
2 /* { dg-options "-O2 -fno-tree-loop-distribute-patterns -ftree-vectorize -fdump-tree-vect-details -fno-vect-cost-model" } */
3 /* { dg-additional-options "-mno-sse" { target { i?86-*-* x86_64-*-* } } } */
4 /* The IBM Z backend sets the min-vect-loop-bound param to 2 to avoid
5 awkward epilogue code generation in some cases. This line needs to
6 be removed after finding an alternate way to fix this. */
7 /* { dg-additional-options "--param min-vect-loop-bound=0" { target { s390*-*-* } } } */
9 #include <stdlib.h>
11 #define N 16
13 int main ()
15 struct {
16 char ca[N];
17 } s;
18 int i;
20 for (i = 0; i < N; i++)
22 s.ca[i] = 5;
25 /* check results: */
26 for (i = 0; i < N; i++)
28 if (s.ca[i] != 5)
29 abort ();
32 return 0;
36 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target { ! { avr-*-* pru-*-* } } } } } */
37 /* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 0 "vect" { target { ! { avr-*-* pru-*-* } } } } } */