[PATCH] [LoopVectorize]Teach Loop Vectorizer about interleaved data accesses
Hao Liu
Hao.Liu at arm.com
Mon Apr 6 20:16:50 PDT 2015
In http://reviews.llvm.org/D8820#151658, @qcolombet wrote:
> Hi Hao,
>
> Thanks for working on this.
>
> I share Ahmed’s questions and concerns.
> Also, as a very high level comment, where is the part of the patch that update the documentation for those intrinsics?
> Without that documentation, it is hard, at least at first glance, to review the whole patch.
>
> Thanks,
> -Quentin
HI Quentin,
In http://reviews.llvm.org/D8820#151656, @delena wrote:
> (1) Teach LoopVectorizer to identify interleave accesses in the Legality phase.
> Ask LoopVectorizer (Legality->target) whether the specified indices are profitable, give data type and list of constant indices.
> Different sequence may be profitable for different targets.
>
> (2) Teach LoopVectorizer to transform interleave accesses to index.load/index.store with specific interleaved indices.
>
> index.load/store should just receive the indices. Not just interleave.
>
> - Elena
Hi Elena,
That's reasonable. I think I could split this patch into two:
(1) One patch for new intrinsics including adding llvm.index.load/llvm.index.store, handling such intrinsics in SelectionDAG, modifying LangRef.
(2) Another specific patch for LoopVectorizer including identifying and generating index.load/index.store.
Thanks,
-Hao
http://reviews.llvm.org/D8820
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
More information about the llvm-commits
mailing list