diff options
author | Roman Lebedev <lebedev.ri@gmail.com> | 2023-01-15 20:20:44 +0300 |
---|---|---|
committer | Roman Lebedev <lebedev.ri@gmail.com> | 2023-01-15 21:11:33 +0300 |
commit | f8d9097168b73e3befd94ac4e16cbc5f944afcec (patch) | |
tree | d9a5b463953f17d64876cc008e80157d8a3cb1d2 /llvm/lib/Support/StringRef.cpp | |
parent | 597001515a240ac4c3285f4a90f453394b5fad32 (diff) | |
download | llvm-f8d9097168b73e3befd94ac4e16cbc5f944afcec.zip llvm-f8d9097168b73e3befd94ac4e16cbc5f944afcec.tar.gz llvm-f8d9097168b73e3befd94ac4e16cbc5f944afcec.tar.bz2 |
[DAGCombiner] `combineShuffleOfSplatVal()`: try to canonicalize to a splat shuffle
As noted in https://reviews.llvm.org/D141778#inline-1369900,
we fail to produce splat shuffles from certain sequences
of shuffles, that may have non-shuffles in the middle of seq.
There is a big pitfail to avoid here: just because `isSplatValue()`
says that all demanded elements are splat, we can't pick any random
one of them, because some of them could be undef! We must ignore those!
Diffstat (limited to 'llvm/lib/Support/StringRef.cpp')
0 files changed, 0 insertions, 0 deletions