On Mon, Oct 24, 2011 at 7:00 AM, Richard Guenther <richard.guent...@gmail.com> wrote: > On Mon, Oct 24, 2011 at 2:55 PM, Bingfeng Mei <b...@broadcom.com> wrote: >> Hello, >> I noticed that COND_EXPR is not expanded to conditional move >> as MIN_EXPR/MAX_EXPR are (assuming movmodecc is available). >> I wonder why not? >> >> I have some loop that fails tree vectorization, but still contains >> COND_EXPR from tree ifcvt pass. In the end, the generated code >> is worse than if I don't turned -ftree-vectorize on. This >> is on our private port. > > Because nobody touched COND_EXPR expansion since ages.
I have a patch which I will be submitting next week or so that does this expansion correctly. In fact I have a few patches which improves the generation of COND_EXPR in simple cases (in PHI-OPT). Thanks, Andrew Pinski