diff gcc/testsuite/gcc.dg/pr85467.c @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gcc/testsuite/gcc.dg/pr85467.c	Thu Oct 25 07:37:49 2018 +0900
@@ -0,0 +1,30 @@
+/* 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