llvm-project
cae0d67c - [AArch64][SDAG] Detect non-zeroes in truncating buildvectors in fshl lowering (#123597)

Commit
318 days ago
[AArch64][SDAG] Detect non-zeroes in truncating buildvectors in fshl lowering (#123597) A BUILD_VECTOR can implicity shrink the bits of the operands if the operand types are not legal. For example a v8i16 constant BUILD_VECTOR might be represented as v8i16 BUILDVECTOR(i32 1, i32 2, ...). Unfortunately this means that the constants are not accepted by matchUnaryPredicateImpl, preventing in this case funnel shifts detecting that all the operands are non-zero. Add a flag to help it match.
Author
Parents
Loading