[Bug target/78102] [5/6/7 regression] GCC refuses to generate PCMPEQQ instruction for SSE4.1

ubizjak at gmail dot com gcc-bugzilla@gcc.gnu.org
Tue Oct 25 09:01:00 GMT 2016


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

--- Comment #10 from Uroš Bizjak <ubizjak at gmail dot com> ---
(In reply to Jakub Jelinek from comment #8)

> How would it expand?  Repeat all the vector condition/comparison lowering
> code from tree-vect-generic.c on RTL?  Compared to that I think it would be
> simpler to handle it in ix86_expand_int_vcond - if the only problematic mode
> is V2DImode, then that might be easier than just writing code that would
> handle arbitrary vectors.  That still means the vectorizer believes all the
> comparisons are supported and might result in really terrible code (rather
> than just giving up).

There are predicates in optabs-tree.c: expand_vec_cmp_expr_p and
expand_vec_cond_expr_p) that currently only check if the insn code is
available.

But, you are right. These predicates don't check if the comparison code can be
handled by the optab...


More information about the Gcc-bugs mailing list