#include "tree-vect.h" unsigned a[1024]; int gres1, gres2; int __attribute__((noipa)) foo (int n) { int res1 = 0; int res2 = 0; for (int i = 0; i < n; ++i) { res1 = res1 > a[2*i] ? res1 : a[2*i]; res2 = res2 > a[2*i+1] ? res2 : a[2*i+1]; } gres1 = res1; gres2 = res2; } int main () { check_vect (); a[30] = (unsigned)__INT_MAX__ + 1; a[31] = (unsigned)__INT_MAX__ + 1; foo (16); if (gres1 != -__INT_MAX__ - 1 || gres2 != -__INT_MAX__ - 1) __builtin_abort (); return 0; } /* { dg-final { scan-tree-dump-times "VEC_PERM_EXPR" 0 "vect" } } */