[PATCH] D82953: [ARM][MVE] Don't tail-fold float reductions

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 1 07:00:18 PDT 2020


dmgreen added a comment.

Hello. I agree with this, but I would suggest we take it further.

There are multiple forms of reductions that the vectorizer can produce. It's at least:
int add, int mul
float add, float mul
and, or, xor
int smin, smax, umin, umax
float min & max.

I think the ARMLowOverheadLoops will only currently handle integer add's. Considering how powerful the vectorizers handling of reductions is, and how easy (and expensive) it would be for the ARMLowOverheadLoops pass to get that wrong, I would suggest just disabling _all_ reductions at the moment.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D82953/new/

https://reviews.llvm.org/D82953





More information about the llvm-commits mailing list