[llvm] r203734 - Fix vectorizer docs.

Zinovy Nis zinovy.nis at gmail.com
Thu Mar 13 08:06:23 PDT 2014


BTW It'd be nice if all the samples are accompanied with the corresponding
cmd-line options and target name. To be able to reproduce and analyze these
samples.
As for now one has to iterate through few archs and play around with a lot
of optimization options to reproduce the effect.   Thanks in advace)


2014-03-13 13:40 GMT+04:00 Zinovy Nis <zinovy.nis at gmail.com>:

> Thanks.
>
>
> 2014-03-13 3:54 GMT+04:00 Arnold Schwaighofer <aschwaighofer at apple.com>:
>
>
>> On Mar 12, 2014, at 4:36 PM, Chandler Carruth <chandlerc at google.com>
>> wrote:
>>
>> >
>> > On Wed, Mar 12, 2014 at 4:23 PM, Arnold Schwaighofer <
>> aschwaighofer at apple.com> wrote:
>> > Fix vectorizer docs.
>> >
>> > This example is not vectorized because LLVM does not prove no-wrapping
>> of
>> > "a[i*7] += ...".
>> >
>> > See my other email, but...
>> >
>> >
>> > -  int foo(int *A, int *B, int n, int k) {
>> > -    for (int i = 0; i < n; ++i)
>> > -      A[i*7] += B[i*k];
>> > +  int foo(int * A, int * B, int n) {
>> > +    for (intptr_t i = 0; i < n; ++i)
>> > +        A[i] += B[i*4];
>> >
>>
>>
>> > I don't believe that this can possibly change whether or not any of
>> this pointer arithmetic could possibly wrap. I mean... maybe I'm missing
>> something blindly obvious and just have a think-o moment... but I *really*
>> don't think this is remotely possible.
>> >
>>
>>
>> Wrapping only matters for store to load safety. As I explained in the
>> other email, it is a matter of LLVM not being able to prove this atm. Not
>> that this example is unsafe. It is not. The page describes examples that
>> LLVM can vectorize so I took this example out :).
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140313/8e5d622d/attachment.html>


More information about the llvm-commits mailing list