blob: fad94fcd83ee03ef80e822888bf1f5227582eda4 [file] [log] [blame]
/* PR tree-optimization/85467 */
/* { dg-do compile } */
/* { dg-options "-O2 -fno-tree-ccp" } */
#define TEST(N, T) \
typedef T V##N __attribute__ ((__vector_size__ (sizeof (T)))); \
\
V##N \
bar##N (V##N u, V##N v) \
{ \
do \
v *= (T)((V##N){}[0] ? u[v[0]] : 0); \
while ((V##N){}[0]); \
return v; \
} \
\
void \
foo##N (void) \
{ \
bar##N ((V##N){}, (V##N){}); \
}
TEST (1, char)
TEST (2, short)
TEST (3, int)
TEST (4, long)
TEST (5, long long)
#ifdef __SIZEOF_INT128__
TEST (6, __int128)
#endif