https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98302
--- Comment #10 from Alex Coplan <acoplan at gcc dot gnu.org> ---
Reduced to:
int c = 1705;
char a;
long f = 50887638;
unsigned long long *h(unsigned long long *k, unsigned long long *l) {
return *k ? k : l;
}
void aa() {}
int main() {
long d = f;
for (char g = 0; g < (char)c - 10; g += 2) {
unsigned long long i = d, j = 4;
a = *h(&i, &j) << ((d ? 169392992 : 0) - 169392955LL);
}
if (a)
__builtin_abort();
}
which is miscompiled at -O2 -ftree-vectorize or -O3.