https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114070
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |rguenth at gcc dot gnu.org
Target| |sparc
Target Milestone|--- |12.4
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
/* For vector typed comparisons emit code to generate the desired
all-ones or all-zeros mask. */
if (VECTOR_TYPE_P (ops->type))
{
tree ifexp = build2 (ops->code, ops->type, arg0, arg1);
if (VECTOR_BOOLEAN_TYPE_P (ops->type)
&& expand_vec_cmp_expr_p (TREE_TYPE (arg0), ops->type, ops->code))
return expand_vec_cmp_expr (ops->type, ifexp, target);
else
gcc_unreachable ();
that means we end up with a non-boolean vector "flag". Possibly a middle-end
issue indeed.