This is an archive of the discontinued LLVM Phabricator instance.

[CodeGen][AArch64] Bail out in performConcatVectorsCombine for scalable vectors
ClosedPublic

Authored by david-arm on Nov 25 2021, 7:49 AM.

Details

Summary

I tried to exercise the existing combine patterns in performConcatVectorsCombine
for scalable vectors and at the moment it doesn't seem possible. Parts of
the code currently assume we're dealing with fixed-width vectors with calls
to getVectorNumElements(), therefore I've decided to simply bail out early
for scalable vectors.

Diff Detail

Event Timeline

david-arm created this revision.Nov 25 2021, 7:49 AM
david-arm requested review of this revision.Nov 25 2021, 7:49 AM
Herald added a project: Restricted Project. · View Herald TranscriptNov 25 2021, 7:49 AM

This is missing a test?

david-arm updated this revision to Diff 389937.Nov 26 2021, 1:23 AM
  • Added test to an existing file.
sdesmalen added inline comments.Nov 26 2021, 1:51 AM
llvm/test/CodeGen/AArch64/concat_vector-truncate-combine.ll
53 ↗(On Diff #389937)

It's a bit of a pity that we can't properly express a concat_vector directly. I tried creating a test using vector.insert in the hope that would lead to a concat_vector, without success.

Can you maybe add a comment explaining why this test relates to a 'concat_vector' issue ?

david-arm updated this revision to Diff 389975.Nov 26 2021, 3:00 AM
  • Added comment to the test.
sdesmalen accepted this revision.Nov 29 2021, 1:34 AM
This revision is now accepted and ready to land.Nov 29 2021, 1:34 AM