http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50596
--- Comment #15 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-10-07
10:31:13 UTC ---
float a[1024], b[1024], c[1024], d[1024];
int j[1024];
void
f1 (void)
{
int i;
for (i = 0; i < 1024; ++i)
{
unsigned int x = a[i] < b[i] ? -1 : 0;
unsigned int y = c[i] < d[i] ? -1 : 0;
j[i] = (x & y) >> 31;
}
}
vectorizes fine and generates quite good code IMHO. Something similar I'd like
to achieve with the vect_recog_bool_pattern I'm working on even for some of
your testcases.