[LLVMdev] Code review for gather and scatter intrinsics

Renato Golin renato.golin at linaro.org
Thu Apr 16 07:17:29 PDT 2015


On 16 April 2015 at 14:44, Demikhovsky, Elena
<elena.demikhovsky at intel.com> wrote:
> http://reviews.llvm.org/D7665.
> I presented this work on LLVM Euro and people are interested in this
> feature.
> Can anybody review this code, please?

Hi Elena,

Sorry for the delay, I'm still catching up with my emails after a long
holiday. :)

The only concern to this feature I remember was Chandler's comment
that we should try to encode everything into loads and shuffles.

Correct me if I'm wrong, but on the strided vectorizer thread we have
reached a consensus that indexed intrinsics would be the least
problematic (compared to strided access intrinsics or plain
load+shuffle) because they're restricted to load/store of patterns
that could later be lowered to shuffles, if the hardware doesn't
support it, but they'd also keep the pattern intact even after other
optimization passes have gone through the same code.

Chandler,

As I said at EuroLLVM, the fear is that we'd get the pattern destroyed
and lose the ability of using masked / strided access at all. However,
I'm haven't looked at great depth at this problem to know what are the
cases and why they could break. Maybe Elena or James could help with
that.

cheers,
--renato



More information about the llvm-dev mailing list