https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84786

--- Comment #15 from Matthias Kretz <kretz at kde dot org> ---
Here's an idea for a test case (https://godbolt.org/g/SjM2HE: it appears fixed
on GCC 8):

typedef unsigned short V __attribute__((vector_size (16)));

V foo (V x, int y)
{
  x <<= y;
  asm volatile (""::"x"(x):"xmm1", "xmm2", "xmm3",
     "xmm4", "xmm5", "xmm6", "xmm7", "xmm8", "xmm9",
     "xmm10", "xmm11", "xmm12", "xmm13", "xmm14", "xmm15");
  return x >> y;
}

Reply via email to