http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56695



--- Comment #9 from Richard Biener <rguenth at gcc dot gnu.org> 2013-03-27 
09:57:41 UTC ---

That said, it should look like, unconditionally(!)



      unsigned int prec = GET_MODE_BITSIZE (TYPE_MODE (TREE_TYPE (vectype)));

      tree cmp_type = build_nonstandard_integer_type (prec,

                         TYPE_UNSIGNED (TREE_OPERAND (cond_expr, 0)));

      vec_cmp_type = get_same_sized_vectype (cmp_type, vectype);

      if (vec_cmp_type == NULL_TREE)

        return false;



whether the result is integral or not doesn't matter.  You can still have



  foo_signed = uns1 < uns2 ? bar_signed : bar2_signed;

Reply via email to