[PATCH] D51428: SLPVectorizer: Fix assert with different sized address spaces
Matt Arsenault via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Aug 29 23:39:25 PDT 2018
arsenm added inline comments.
================
Comment at: lib/Transforms/Vectorize/SLPVectorizer.cpp:6402
auto *SCEVJ = SE->getSCEV(GEPList[J]);
- if (isa<SCEVConstant>(SE->getMinusSCEV(SCEVI, SCEVJ))) {
+ if (SCEVJ->getType() == SCEVI->getType() &&
+ isa<SCEVConstant>(SE->getMinusSCEV(SCEVI, SCEVJ))) {
----------------
ABataev wrote:
> I don't think this is correct. Instead, you should try to collect GEPs with the different address spaces into different nodes
That's what I thought at first, but his isn't vectorizing the GEP itself as far as I can see. It only cares about the index operation, which could be the same size between different address spaces
https://reviews.llvm.org/D51428
More information about the llvm-commits
mailing list