Next: Logical Operators, Previous: Compound Lvalues, Up: GIMPLE Expressions
A C ?: expression is converted into an if statement with
each branch assigning to the same temporary. So,
a = b ? c : d;
becomes
if (b)
T1 = c;
else
T1 = d;
a = T1;
Tree level if-conversion pass re-introduces ?: expression, if appropriate.
It is used to vectorize loops with conditions using vector conditional operations.
Note that in GIMPLE, if statements are also represented using
COND_EXPR, as described below.