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

--- Comment #1 from Ilya Enkovich <ienkovich at gcc dot gnu.org> ---
It is reproducible without vector comparison on older compilers.  Here is a
smaller reproducer:

long double v __attribute__((vector_size(16)));
__typeof((v<v)[0]) v1;
bool v2;

void test ()
{
  v2 = v1 != 0;
}

GCC6 and GCC4.9 fail with the same ICE in expand_shift_1 for powerpc on this
test.

BTW if we use __float128 instead of long double then this issue is reproducible
on i386 target also.  Looks like never worked for 32bit targets.

Reply via email to