gccint: Conditional Expressions
1
1 12.6.3 Conditional Expressions
1 ------------------------------
1
1 A C '?:' expression is converted into an 'if' statement with each branch
1 assigning to the same temporary. So,
1
1 a = b ? c : d;
1 becomes
1 if (b == 1)
1 T1 = c;
1 else
1 T1 = d;
1 a = T1;
1
1 The GIMPLE level if-conversion pass re-introduces '?:' expression, if
1 appropriate. It is used to vectorize loops with conditions using vector
1 conditional operations.
1
1 Note that in GIMPLE, 'if' statements are represented using
1 'GIMPLE_COND', as described below.
1