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

--- Comment #34 from Richard Biener <rguenth at gcc dot gnu.org> ---
The ELSE value of type TYPE would be constructed like

 tree var = create_tmp_var (type);
 tree else_val = get_or_create_ssa_default_def (cfun, var);

I'm not sure const0_rtx is a good representation on RTL - how would
you distinguish that from a conditional operation on an integer vector
with else value zero?  Say for an integer division?

 for (i)
   if (f[i])
     y[i] = x[i] / z[i];
   else
     y[i] = 0;

we don't have a separate "else" value for elements cut off via 'len'
vs. elements cut off via 'mask'.

On RTL there are "special" RTXen used for this kind of stuff, like
(use:mode ..) or (clobber const0_rtx), but I'm the wrong person to
ask which one would be most appropriate for a general operand in
an otherwise generic instruction.  Maybe Richard has a guess.

Reply via email to