This is an archive of the discontinued LLVM Phabricator instance.

[AArch64] Add tests for dotreduce to check for wider vectors.
ClosedPublic

Authored by zjaffal on Jan 13 2023, 7:21 AM.

Details

Summary

Currently we only reduce vector.reduce.add to sdot if the vectors are either <8 x i8> or <16 x i8>.

Diff Detail

Event Timeline

zjaffal created this revision.Jan 13 2023, 7:21 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 13 2023, 7:21 AM
zjaffal requested review of this revision.Jan 13 2023, 7:21 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 13 2023, 7:21 AM
fhahn added a comment.Jan 13 2023, 7:56 AM

Thanks for adding the tests! Could you also add a few variants where the number of elements is not a multiple of 16?

zjaffal updated this revision to Diff 489033.Jan 13 2023, 9:08 AM

Add test cases where the vector element count is not a multiple of 16

fhahn added inline comments.Jan 13 2023, 9:16 AM
llvm/test/CodeGen/AArch64/neon-dotreduce.ll
10

this will generate a massive amount of code, so it might be better to just keep the one with 33 elements.

574

What's the intention of the _nomla tests? In those cases, no dot instructions can be selected in any case?

zjaffal updated this revision to Diff 489142.Jan 13 2023, 3:37 PM

remove v65i32 test case

fhahn accepted this revision.Jan 16 2023, 1:11 AM

LGTM, thanks!

This revision is now accepted and ready to land.Jan 16 2023, 1:11 AM
This revision was landed with ongoing or failed builds.Jan 16 2023, 4:05 AM
This revision was automatically updated to reflect the committed changes.