Re: auto-vectorization analysis/__builtin_assume_aligned on gcc-4.7-20120114

2012-01-19 Thread Richard Guenther
On Thu, Jan 19, 2012 at 2:12 PM, Alexander Herz wrote: > The generated non-vectorized assembly is simply the unrolled loop with >8 > iterations, so loop structure is pretty much intact (except for unrolling). > > Does the vectorizer fail on unrolled loops? > > I can compile some assembly dumps sho

Re: auto-vectorization analysis/__builtin_assume_aligned on gcc-4.7-20120114

2012-01-19 Thread Alexander Herz
The generated non-vectorized assembly is simply the unrolled loop with >8 iterations, so loop structure is pretty much intact (except for unrolling). Does the vectorizer fail on unrolled loops? I can compile some assembly dumps showing both the vectorized and the unvectorized loop? Alex On

Re: auto-vectorization analysis/__builtin_assume_aligned on gcc-4.7-20120114

2012-01-19 Thread Richard Guenther
On Wed, Jan 18, 2012 at 6:37 PM, Alexander Herz wrote: > Given this piece of code (gcc-4.7-20120114): > >    static void Test(Batch* block,Batch* new_block,const uint32 offs) >    { > >        T* __restrict old_values > =(T*)__builtin_assume_aligned(block->items,16); >        T* __restrict new_val