This is an archive of the discontinued LLVM Phabricator instance.

[SingleSource] Add initial vectorizer tests with recurrences.
ClosedPublic

Authored by fhahn on Jul 7 2022, 6:21 PM.

Details

Summary

This patch adds dedicated test coverage for multi order
recurrences. D119661 will add support for vectorizing the second and
third order tests.

Diff Detail

Repository
rT test-suite

Event Timeline

fhahn created this revision.Jul 7 2022, 6:21 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 7 2022, 6:21 PM
fhahn requested review of this revision.Jul 7 2022, 6:21 PM
Meinersbur accepted this revision.Jul 11 2022, 8:32 AM

The macro DEFINE_SCALAR_AND_VECTOR_FN2 will be confused if one of the arguments itself contains a comma. For instance, one cannot write int for2 = 22, for1 = 33; for int for2 = 22; int for1 = 33; in the patch. But the macro is not general-purpose anyway.

LGTM

This revision is now accepted and ready to land.Jul 11 2022, 8:32 AM
fhahn added a comment.Jul 27 2022, 8:22 AM

The macro DEFINE_SCALAR_AND_VECTOR_FN2 will be confused if one of the arguments itself contains a comma. For instance, one cannot write int for2 = 22, for1 = 33; for int for2 = 22; int for1 = 33; in the patch. But the macro is not general-purpose anyway.

That's a good point, thanks! I am wondering if there's a better alternative to those macros in general?