LWG 3035. std::allocator's constructors should be constexpr
[official-gcc.git] / gcc / testsuite / gcc.dg / vect / no-scevccp-vect-iv-3.c
blob50b4998bb6c92427019561e0ab78cab77383e5b5
1 /* { dg-do compile } */
2 /* { dg-require-effective-target vect_int } */
4 #include <stdarg.h>
5 #include "tree-vect.h"
7 #if VECTOR_BITS > 256
8 #define N (VECTOR_BITS / 16 + 10)
9 #else
10 #define N 26
11 #endif
13 __attribute__ ((noinline))
14 unsigned int main1 ()
16 unsigned short i;
17 unsigned int intsum = 0;
19 /* vectorization of reduction with induction, and widenning sum:
20 sum shorts into int.
21 Need -fno-tree-scev-cprop or else the loop is eliminated. */
22 for (i = 0; i < N; i++)
24 intsum += i;
27 return intsum;
30 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_widen_sum_hi_to_si } } } */
31 /* { dg-final { scan-tree-dump-times "vect_recog_widen_sum_pattern: detected" 1 "vect" { target vect_widen_sum_hi_to_si } } } */