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

--- Comment #10 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Though wonder if for the boolean vectors one couldn't actually emit different
code altogether.  If the whole vec_offset is all falses or all trues, we could
just broadcast the same memory, otherwise load both memories, broadcast and
select between them based on the boolean vector.  Perhaps it can be done
without multiple bbs by
loading the memory twice, but using COND_EXPRs in there, m0 = x[all_true ? 1 :
0];
m1 = x[all_false ? 0 : 1];

Reply via email to