Added analysis for invariant extractelement instructions and improved
detection of the CSE blocks for generated extractelement instructions.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp | ||
---|---|---|
8715 | Just want to be safe, remember some conflicts with possible ConstExprs as operands. I can change it to cast |
llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp | ||
---|---|---|
8715 | I don't think such "safety" measure has good justification. If for some reason the cast fires an assertion it will be easy to understand what happened. Otherwise you would allow the issue to go further which sometimes might result in hard to trace performance issues. |
At this point Ex is guaranteed to be an instruction. So why dyn_cast?