aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/LoopUtils.cpp
diff options
context:
space:
mode:
authorFraser Cormack <fraser@codeplay.com>2022-01-13 17:23:07 +0000
committerFraser Cormack <fraser@codeplay.com>2022-01-15 11:41:29 +0000
commit877d1b3d0770d7ce26791224088025993f89721c (patch)
tree47d9f8461b72cd6db515f5f2aa735c54bc13dae1 /llvm/lib/Transforms/Utils/LoopUtils.cpp
parentba3198cfd11443b214eec43a03f292a66040fbca (diff)
downloadllvm-877d1b3d0770d7ce26791224088025993f89721c.zip
llvm-877d1b3d0770d7ce26791224088025993f89721c.tar.gz
llvm-877d1b3d0770d7ce26791224088025993f89721c.tar.bz2
[SelectionDAG][VP] Add splitting/widening for VP_LOAD and VP_STORE
Original patch by @hussainjk. This patch was split off from D109377 to keep vector legalization (widening/splitting) separate from vector element legalization (promoting). While the original patch added a third overload of SelectionDAG::getVPStore, this patch takes the liberty of collapsing those all down to 1, as three overloads seems excessive for a little-used node. The original patch also used ModifyToType in places, but that method still crashes on scalable vector types. Seeing as the other VP legalization methods only work when all operands need identical widening, this patch follows in that vein. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D117235
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopUtils.cpp')
0 files changed, 0 insertions, 0 deletions