1 /* { dg-require-effective-target vect_int } */
8 unsigned char uX
[N
] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__
)));
9 unsigned char uresultX
[N
];
10 unsigned int uY
[N
] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__
)));
11 unsigned short uresultY
[N
];
13 /* Unsigned type demotion (si->hi) */
15 __attribute__ ((noinline
)) int
19 for (i
=0; i
<len
; i
++) {
21 uresultY
[i
] = (unsigned short)uY
[i
];
34 __asm__
volatile ("");
40 if (uresultX
[i
] != uX
[i
])
42 if (uresultY
[i
] != (unsigned short)uY
[i
])
49 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_pack_trunc } } } */
50 /* { dg-final { cleanup-tree-dump "vect" } } */