view gcc/testsuite/gcc.dg/pr94166.c @ 152:2b5abeee2509

update gcc11
author anatofuz
date Mon, 25 May 2020 07:50:57 +0900
parents
children
line wrap: on
line source

/* PR tree-optimization/94166 */
/* { dg-do compile } */
/* { dg-options "-O2 -fcompare-debug" } */

typedef int __m128i __attribute__((__may_alias__, __vector_size__(4 * sizeof (int))));
unsigned int b[512];

void
foo (unsigned int *x, __m128i *y)
{
#define A(n) __m128i v##n = y[n];
#define B(n) A(n##0) A(n##1) A(n##2) A(n##3) A(n##4) A(n##5) A(n##6) A(n##7) \
	     A(n##8) A(n##9) A(n##a) A(n##b) A(n##c) A(n##d) A(n##e) A(n##f)
#define C(n) B(n##0) B(n##1) B(n##2) B(n##3) B(n##4) B(n##5) B(n##6) B(n##7)
  C(0x)
#undef A
#define A(n) *(__m128i *) &b[4 * n] = v##n;
  C(0x)
#undef A
#define A(n) + b[4 * n] + b[4 * n + 1] + b[4 * n + 2] + b[4 * n + 3]
  *x = *x
  C(0x)
  ;
}