[PATCH] Add support to vectorize ctlz, cttz and powi intrinsics in SLPVectorizer

Nadav Rotem nrotem at apple.com
Tue May 20 11:58:57 PDT 2014


Hi Karthik, 

Thanks for working on it. It would be great to vectorize powi, ctlz and cttz. Why did you decide to use SCEV and not simply check the last argument for equality?

Thanks,
Nadav 

On May 20, 2014, at 11:52 AM, Karthik Bhat <kv.bhat at samsung.com> wrote:

> Hi nadav, hfinkel, aschwaighofer,
> 
> Hi Nadav, Arnold, Hal,
> This patch adds support to recognize and vectorize llvm intrinsics  ctlz,cttz and powi. These intrinsics are different from other intrinsics handled so far in SLPVectorizer as 2nd argument of these intrinsics should be a scalar and we can vectorize these intrinsics only if the second argument is same.
> Does this look good to commit?
> Thanks
> Karthik Bhat
> 
> http://reviews.llvm.org/D3851
> 
> Files:
>  include/llvm/Transforms/Utils/VectorUtils.h
>  lib/Transforms/Vectorize/SLPVectorizer.cpp
>  test/Transforms/SLPVectorizer/X86/intrinsic.ll
> <D3851.9638.patch>




More information about the llvm-commits mailing list