(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
vect/
vect-12.c
       1  /* { dg-require-effective-target vect_int } */
       2  
       3  #include <stdarg.h>
       4  #include "tree-vect.h"
       5  
       6  #define N 16
       7  
       8  __attribute__ ((noinline))
       9  int main1 ()
      10  {
      11    int i;
      12    int ia[N];
      13    int ic[N] = {0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45};
      14    int ib[N] = {0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45};
      15    short sa[N];
      16    short sc[N] = {0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45};
      17    short sb[N] = {0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45};
      18  
      19    /* Multiple types with different nunits in vector.  */
      20    for (i = 0; i < N; i++)
      21      {
      22        ia[i] = ib[i] + ic[i];
      23        sa[i] = sb[i] + sc[i];
      24      }
      25  
      26    /* check results:  */
      27    for (i = 0; i < N; i++)
      28      {
      29        if (ia[i] != ib[i] + ic[i] || sa[i] != sb[i] + sc[i])
      30          abort ();
      31      }
      32  
      33    return 0;
      34  }
      35  
      36  int main (void)
      37  { 
      38    check_vect ();
      39    
      40    return main1 ();
      41  }
      42  
      43  /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */