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?