]> granicus.if.org Git - llvm/commit
Revert r313771 "[SLP] Vectorize jumbled memory loads."
authorHans Wennborg <hans@hanshq.net>
Wed, 20 Sep 2017 18:00:03 +0000 (18:00 +0000)
committerHans Wennborg <hans@hanshq.net>
Wed, 20 Sep 2017 18:00:03 +0000 (18:00 +0000)
commit1809c66b662a3fe23409938b9455101f1c8df7b8
tree01aecf8fa8d6baecb062443110cffa5e6068400b
parent6a05035fb98184932584b076431e184c1a352738
Revert r313771 "[SLP] Vectorize jumbled memory loads."

This broke the buildbots, e.g.
http://bb.pgr.jp/builders/test-llvm-i686-linux-RA/builds/391

> Summary:
> This patch tries to vectorize loads of consecutive memory accesses, accessed
> in non-consecutive or jumbled way. An earlier attempt was made with patch D26905
> which was reverted back due to some basic issue with representing the 'use mask'
> jumbled accesses.
>
> This patch fixes the mask representation by recording the 'use mask' in the usertree entry.
>
> Change-Id: I9fe7f5045f065d84c126fa307ef6ebe0787296df
>
> Subscribers: mzolotukhin
>
> Reviewed By: ayal
>
> Differential Revision: https://reviews.llvm.org/D36130
>
> Review comments updated accordingly
>
> Change-Id: I22ab0a8a9bac9d49d74baa81a08e1e486f5e75f0
>
> Added a TODO for sortLoadAccesses API
>
> Change-Id: I3c679bf1865422d1b45e17ea28f1992bca660b58
>
> Modified the TODO for sortLoadAccesses API
>
> Change-Id: Ie64a66cb5f9e2a7610438abb0e750c6e090f9565
>
> Review comment update for using OpdNum to insert the mask in respective location
>
> Change-Id: I016d0c1b29874e979efc0205bbf078991f92edce
>
> Fixes '-Wsign-compare warning' in LoopAccessAnalysis.cpp and code rebase
>
> Change-Id: I64b2ea5e68c1d7b6a028f5ef8251c5a97333f89b

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@313781 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/Analysis/LoopAccessAnalysis.h
lib/Analysis/LoopAccessAnalysis.cpp
lib/Transforms/Vectorize/SLPVectorizer.cpp
test/Transforms/SLPVectorizer/X86/jumbled-load-multiuse.ll
test/Transforms/SLPVectorizer/X86/jumbled-load-shuffle-placement.ll [deleted file]
test/Transforms/SLPVectorizer/X86/jumbled-load.ll
test/Transforms/SLPVectorizer/X86/store-jumbled.ll