[llvm-dev] Invoke loop vectorizer

Xiaochu Liu via llvm-dev llvm-dev at lists.llvm.org
Fri Aug 12 11:08:08 PDT 2016


Hi Andrey,

Thanks. I found even when loop vectorizer and SLP vectorizer are enabled,
my simple test still not get optimized. I also tried clang pragma in my
test to force vectorization. What do you think is the problem?

Test:

#define SIZE 8

void bar(int *A, int* B,int K) {

  #pragma clang loop vectorize(enable) vectorize_width(2) unroll_count(8)

  for (int i = 0; i < SIZE; ++i)

    A[i] += B[i] + K;

}

Thanks,
Xiaochu

On Aug 12, 2016 4:06 AM, "Andrey Bokhanko" <andreybokhanko at gmail.com> wrote:

> Hi Xiaochu,
>
> Clang uses -O0 by default, that doesn't run any optimizations. Try
> supplying -O1 or higher.
>
> Yours,
> Andrey
>
>
> On Fri, Aug 12, 2016 at 1:04 AM, Xiaochu Liu via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>> Hi there ,
>>
>> I use clang-cl /Qvec test.c to compile the code. But the pass
>> LoopVectorizer is never invoked.
>>
>> I was wondering if this is sufficient to enable auto vectorizer?
>>
>> Thanks,
>> Xiaochu
>>
>> _______________________________________________
>> LLVM Developers mailing list
>> llvm-dev at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160812/84449f23/attachment.html>


More information about the llvm-dev mailing list