view gcc/testsuite/gcc.dg/pr85467.c @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 84e7813d76e9
children
line wrap: on
line source

/* 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