https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92132
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |missed-optimization
Component|testsuite |target
--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
This needs to vectorize
a = double < double ? int : int;
via
c1 = double < double ? (long)-1 : 0;
c2 = double < double ? (long)-1 : 0;
im = pack c1, c2 -> int vector
a = im ? int : int;
the testcase uses vect_condition, maybe it needs vect_cond_mixed but that's
enabled for powerpc*-*-* as well...
The dump says
vect-cond-reduc-4.c:12:1: missed: not vectorized: relevant stmt not
supported: patt_27 = _4 < min_v_11(D);
but the pattern was built just fine? Note using -ffast-math doesn't change
things.
So can VSX really not vectorize a comparison of doubles?