Sanjay Patel 7fce3322a2 [SDAG] allow vector types for select->logic folds
This prepares codegen for a change that will remove the identical
folds from IR because they are not poison-safe. See
D93065 / D97360
for details.

We already generically support scalar types, and there are various
target-specific transforms that overlap the vector folds. For example,
x86 recognizes the and patterns, but not or. We can end up with 1
extra instruction there, but I think that is still preferred over the
blendv alternative that loads a constant vector.

If this is not optimal, then it should be fixed with a later transform
(this change is not expected to result in any regressions because
InstCombine currently does the same thing).

Removing custom code and supporting undefs in constant-pattern-matching
can be follow-up changes.

Differential Revision: https://reviews.llvm.org/D97730
2021-03-02 09:25:10 -05:00
..
2020-12-08 15:36:47 +00:00
2020-10-15 17:14:55 -04:00
2021-02-15 14:27:12 +08:00
2020-11-26 12:06:44 +00:00
2020-10-27 16:45:46 +00:00
2020-12-08 15:36:47 +00:00
2021-02-21 21:25:26 +00:00
2020-12-08 10:28:26 +00:00