http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55334



--- Comment #10 from vincenzo Innocente <vincenzo.innocente at cern dot ch> 
2012-11-16 13:46:13 UTC ---

actually looking into the generated code I do not see any trace of "runtime

check"

even in presence of "const"



c++ -O3 -ftree-vectorizer-verbose=1 -c alias.cc 



Analyzing loop at alias.cc:6





Vectorizing loop at alias.cc:6



6: create runtime check for data references *_7 and *_6

6: create runtime check for data references *_9 and *_6

6: created 2 versioning for alias checks.



6: LOOP VECTORIZED.

alias.cc:2: note: vectorized 1 loops in function.

pb-d-128-141-131-26:vectorize innocent$ otool -v -V -t alias.o

alias.o:

(__TEXT,__text) section

__Z3sumv:

0000000000000000    leaq    _mem+0x00001000(%rip),%rax

0000000000000007    leaq    _mem+0x00002000(%rip),%rdx

000000000000000e    nop

0000000000000010    movaps    (%rax),%xmm0

0000000000000013    addq    $0x10,%rax

0000000000000017    addps    0x00000ff0(%rax),%xmm0

000000000000001e    movaps    %xmm0,0xffffeff0(%rax)

0000000000000025    cmpq    %rdx,%rax

0000000000000028    jne    0x00000010

000000000000002a    repz/ret

Reply via email to