Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-07-15 Thread Richard Biener
On Fri, Jun 17, 2016 at 4:33 PM, Ilya Enkovich wrote: > 2016-06-16 9:00 GMT+03:00 Jeff Law : >> On 05/19/2016 01:39 PM, Ilya Enkovich wrote: >>> >>> Hi, >>> >>> This patch introduces changes required to run vectorizer on loop epilogue. >>> This also

Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-07-15 Thread Richard Biener
On Thu, Jun 16, 2016 at 8:00 AM, Jeff Law wrote: > On 05/19/2016 01:39 PM, Ilya Enkovich wrote: >> >> Hi, >> >> This patch introduces changes required to run vectorizer on loop epilogue. >> This also enables epilogue vectorization using a vector of smaller size. >> >> Thanks, >>

Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-07-14 Thread Jeff Law
On 06/24/2016 01:40 AM, Ilya Enkovich wrote: Here is an updated version with disabled alias checks for loop epilogues. Instead of calling vect_analyze_data_ref_dependence I just use VF of the original loop as MAX_VF for epilogue. Thanks, Ilya -- gcc/ 2016-05-24 Ilya Enkovich

Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-07-11 Thread Ilya Enkovich
Ping 2016-06-24 10:40 GMT+03:00 Ilya Enkovich : > On 17 Jun 10:46, Jeff Law wrote: >> On 06/17/2016 08:33 AM, Ilya Enkovich wrote: >> >> >> >>Hmm, there seems to be a level of indirection I'm missing here. We're >> >>smuggling LOOP_VINFO_ORIG_LOOP_INFO around in

Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-06-24 Thread Ilya Enkovich
On 17 Jun 10:46, Jeff Law wrote: > On 06/17/2016 08:33 AM, Ilya Enkovich wrote: > >> > >>Hmm, there seems to be a level of indirection I'm missing here. We're > >>smuggling LOOP_VINFO_ORIG_LOOP_INFO around in loop->aux. Ewww. I thought > >>the whole point of LOOP_VINFO_ORIG_LOOP_INFO was to

Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-06-17 Thread Jeff Law
On 06/17/2016 08:33 AM, Ilya Enkovich wrote: Hmm, there seems to be a level of indirection I'm missing here. We're smuggling LOOP_VINFO_ORIG_LOOP_INFO around in loop->aux. Ewww. I thought the whole point of LOOP_VINFO_ORIG_LOOP_INFO was to smuggle the VINFO from the original loop to the

Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-06-17 Thread Bin.Cheng
On Fri, Jun 17, 2016 at 4:37 PM, Jeff Law wrote: > On 06/17/2016 08:48 AM, Bin.Cheng wrote: > + /* FORNOW: Currently alias checks are not inherited for epilogues. > + Don't try to vectorize epilogue because it will require > + additional alias

Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-06-17 Thread Jeff Law
On 06/17/2016 08:16 AM, Ilya Enkovich wrote: I do think you've got a legitimate question though. Ilya, can you give any insights here based on your KNL and Haswell testing or data/insights from the LLVM and/or ICC teams? I have no information about LLVM. As I said in other thread ICC uses

Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-06-17 Thread Jeff Law
On 06/17/2016 08:48 AM, Bin.Cheng wrote: + /* FORNOW: Currently alias checks are not inherited for epilogues. + Don't try to vectorize epilogue because it will require + additional alias checks. */ Are the alias checks here redundant with the ones done for the original loop? If so

Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-06-17 Thread Ilya Enkovich
2016-06-17 17:48 GMT+03:00 Bin.Cheng : > On Fri, Jun 17, 2016 at 3:33 PM, Ilya Enkovich wrote: >> 2016-06-16 9:00 GMT+03:00 Jeff Law : >>> On 05/19/2016 01:39 PM, Ilya Enkovich wrote: Hi, This patch introduces

Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-06-17 Thread Bin.Cheng
On Fri, Jun 17, 2016 at 3:33 PM, Ilya Enkovich wrote: > 2016-06-16 9:00 GMT+03:00 Jeff Law : >> On 05/19/2016 01:39 PM, Ilya Enkovich wrote: >>> >>> Hi, >>> >>> This patch introduces changes required to run vectorizer on loop epilogue. >>> This also

Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-06-17 Thread Ilya Enkovich
2016-06-16 9:00 GMT+03:00 Jeff Law : > On 05/19/2016 01:39 PM, Ilya Enkovich wrote: >> >> Hi, >> >> This patch introduces changes required to run vectorizer on loop epilogue. >> This also enables epilogue vectorization using a vector of smaller size. >> >> Thanks, >> Ilya >> -- >>

Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-06-17 Thread Ilya Enkovich
2016-06-16 8:22 GMT+03:00 Jeff Law : > On 06/15/2016 05:03 AM, Richard Biener wrote: >> >> On Thu, May 19, 2016 at 9:39 PM, Ilya Enkovich >> wrote: >>> >>> Hi, >>> >>> This patch introduces changes required to run vectorizer on loop >>> epilogue. This also

Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-06-16 Thread Jeff Law
On 05/19/2016 01:39 PM, Ilya Enkovich wrote: Hi, This patch introduces changes required to run vectorizer on loop epilogue. This also enables epilogue vectorization using a vector of smaller size. Thanks, Ilya -- gcc/ 2016-05-19 Ilya Enkovich *

Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-06-15 Thread Jeff Law
On 06/15/2016 05:03 AM, Richard Biener wrote: On Thu, May 19, 2016 at 9:39 PM, Ilya Enkovich wrote: Hi, This patch introduces changes required to run vectorizer on loop epilogue. This also enables epilogue vectorization using a vector of smaller size. While the idea

Re: [PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-06-15 Thread Richard Biener
On Thu, May 19, 2016 at 9:39 PM, Ilya Enkovich wrote: > Hi, > > This patch introduces changes required to run vectorizer on loop epilogue. > This also enables epilogue vectorization using a vector of smaller size. While the idea of epilogue vectorization sounds

[PATCH, vec-tails 03/10] Support epilogues vectorization with no masking

2016-05-19 Thread Ilya Enkovich
Hi, This patch introduces changes required to run vectorizer on loop epilogue. This also enables epilogue vectorization using a vector of smaller size. Thanks, Ilya -- gcc/ 2016-05-19 Ilya Enkovich * tree-if-conv.c (tree_if_conversion): Make public.