[lno] [RFC] if-conversion and auto vectorizer
Devang Patel
dpatel@apple.com
Fri Mar 5 19:06:00 GMT 2004
On Mar 4, 2004, at 1:02 PM, Richard Henderson wrote:
> On Thu, Mar 04, 2004 at 11:58:29AM -0800, Devang Patel wrote:
>> Therefore, we were planning to express conditional operations using
>> only a single new tree-code: SELECT.
>> i.e, the above code would be transformed into:
>> EXAMPLE3:
>> c = compare (x > 0)
>> a1 = y
>> a2 = z
>> a = select a1, a2, c
>
> If we are going to allow such a thing at all, we'll use the exist
> tree code COND_EXPR. Jason, do you have any thoughts on adding
> COND_EXPR back to GIMPLE as a conditional move?
Only concerns I have about reusing COND_EXPR is that it may
confuse GIMPLE verifiers. And it may confuse CFG manipulators
also because what we want is to remove branches, which means
this conditional operation should not cause new additional basic
blocks.
a = select a1, a2, c
b = select b1, b2, c1
c = select a1, b1, c2
We want to put all three statements in one basic block.
--
Devang
More information about the Gcc
mailing list