2016-07-26 18:38 GMT+03:00 Ilya Enkovich <enkovich....@gmail.com>: > 2016-07-26 18:26 GMT+03:00 Jeff Law <l...@redhat.com>: >> On 07/26/2016 03:57 AM, Ilya Enkovich wrote: >>>> >>>> >>>> Ilya, what's the fundamental reason why we need to run >>>> if-conversion again? Yes, I know you want to if-convert the >>>> epilogue, but why? >>>> >>>> What are the consequences of not doing if-conversion on the >>>> epilogue? Presumably we miss a vectorization opportunity on the >>>> tail. But that may be a reasonable limitation to allow the >>>> existing work to move forward while you go back and revamp things a >>>> little. >>> >>> >>> If we have some control-flow in a loop then we have to if-convert it >>> for vectorizer. We need to preserve both versions: if-converted one >>> for vectorizer and the original one to be used if vectorization >>> fails. For epilogues we have similar situation and need two >>> versions. I do it by running if-conversion on a copy of original >>> loop. Note that it doesn't run full if-conversion pass. If-conversion >>> is called for epilogue loop only. >> >> Right. So what I think Richi wants you to try is to use the if-converted >> loop to construct the if-converted epilogue. It seems conceptually simple >> and low cost -- the question is on the implementation side. I have no clue >> how painful that would be. > > Probably another part of if-conversion may be re-used to build required > epilogue. I'll have a look.
Hi, Yuri will continue my work from this point. Thanks, Ilya > > Thanks, > Ilya > >> >> jeff >>