[RISCV] Generaize reduction tree matching to all integer reductions (#68014) (reapply)
This was reverted in 824251c9 exposed by this change in a previous patch. Fixed in 199cbec9. Original commit message follows. This builds on the transform introduced in https://github.com/llvm/llvm-project/pull/67821, and generalizes it for all integer reduction types. A couple of notes: * This will only form smax/smin/umax/umin reductions when zbb is enabled. Otherwise, we lower the min/max expressions early. I don't care about this case, and don't plan to address this further. * This excludes floating point. Floating point introduces concerns about associativity. I may or may not do a follow up patch for that case. * The explodevector test change is mildly undesirable from a clarity perspective. If anyone sees a good way to rewrite that to stablize the test, please suggest.
Loading
Please sign in to comment