Re: rfa: vectorize strided loads [2/2] [PR 18437]

2012-05-17 Thread H.J. Lu
On Sat, Apr 21, 2012 at 11:19 AM, H.J. Lu hjl.to...@gmail.com wrote: On Sat, Apr 21, 2012 at 11:11 AM, H.J. Lu hjl.to...@gmail.com wrote: On Tue, Apr 10, 2012 at 6:46 AM, Michael Matz m...@suse.de wrote: Hi, Michael.        PR tree-optimization/18437        * tree-vectorizer.h

Re: rfa: vectorize strided loads [2/2] [PR 18437]

2012-04-21 Thread H.J. Lu
On Tue, Apr 10, 2012 at 6:46 AM, Michael Matz m...@suse.de wrote: Hi, Michael.        PR tree-optimization/18437        * tree-vectorizer.h (_stmt_vec_info.stride_load_p): New member.        (STMT_VINFO_STRIDE_LOAD_P): New accessor.        (vect_check_strided_load): Declare.        *

Re: rfa: vectorize strided loads [2/2] [PR 18437]

2012-04-21 Thread H.J. Lu
On Sat, Apr 21, 2012 at 11:11 AM, H.J. Lu hjl.to...@gmail.com wrote: On Tue, Apr 10, 2012 at 6:46 AM, Michael Matz m...@suse.de wrote: Hi, Michael.        PR tree-optimization/18437        * tree-vectorizer.h (_stmt_vec_info.stride_load_p): New member.        (STMT_VINFO_STRIDE_LOAD_P):

Re: rfa: vectorize strided loads [2/2] [PR 18437]

2012-04-11 Thread Richard Guenther
On Tue, Apr 10, 2012 at 6:05 PM, Michael Matz m...@suse.de wrote: Hi, On Tue, 10 Apr 2012, Richard Guenther wrote: +         vec_inv = build_constructor (vectype, v); +         new_temp = vect_init_vector (stmt, vec_inv, vectype, gsi); +         new_stmt = SSA_NAME_DEF_STMT (new_temp);

rfa: vectorize strided loads [2/2] [PR 18437]

2012-04-10 Thread Michael Matz
Hi, and this implements generally strided loads where the stride is a loop-invariant (constant or ssa-name). We only do so if the load can't be handled by interleaving groups. The implementation is fairly straight forward: for (i = 0; i n; i += stride) ... = array[i];

Re: rfa: vectorize strided loads [2/2] [PR 18437]

2012-04-10 Thread Richard Guenther
On Tue, Apr 10, 2012 at 3:46 PM, Michael Matz m...@suse.de wrote: Hi, and this implements generally strided loads where the stride is a loop-invariant (constant or ssa-name).  We only do so if the load can't be handled by interleaving groups.  The implementation is fairly straight forward:

Re: rfa: vectorize strided loads [2/2] [PR 18437]

2012-04-10 Thread Michael Matz
Hi, On Tue, 10 Apr 2012, Richard Guenther wrote: +         vec_inv = build_constructor (vectype, v); +         new_temp = vect_init_vector (stmt, vec_inv, vectype, gsi); +         new_stmt = SSA_NAME_DEF_STMT (new_temp); +         mark_symbols_for_renaming (new_stmt); This should not