This is an archive of the discontinued LLVM Phabricator instance.

[SVE] Lower fixed length VECREDUCE_FADD operation
ClosedPublic

Authored by cameron.mcinally on Oct 12 2020, 1:01 PM.

Details

Summary

Nothing too controversial here. I did try something new with the 64b/128b vectors though. Here I picked SVE when there are more than 4 elements in the vector, and NEON for less. The motivation was to keep the instruction count down, but it could probably use some tuning to be sure. Thoughts on that?

Diff Detail

Event Timeline

cameron.mcinally requested review of this revision.Oct 12 2020, 1:01 PM
cameron.mcinally edited the summary of this revision. (Show Details)
paulwalker-arm accepted this revision.Oct 14 2020, 4:27 AM

Not lowering to SVE for v2f## MVTs makes sense for now but as before when we have proper support for v#i1 our hands will be tied.

This revision is now accepted and ready to land.Oct 14 2020, 4:27 AM
This revision was landed with ongoing or failed builds.Oct 14 2020, 7:41 AM
This revision was automatically updated to reflect the committed changes.

Not lowering to SVE for v2f## MVTs makes sense for now but as before when we have proper support for v#i1 our hands will be tied.

Maybe we can talk about this at a Sync-up call. I'm not sure I understand all the implications of it.