This is an archive of the discontinued LLVM Phabricator instance.

[AArch64][SVE] Add SVE2 mla unpredicated intrinsics.
ClosedPublic

Authored by dancgr on Jan 30 2020, 2:17 PM.

Details

Summary

Add intrinsics for the MLA unpredicated sve2 instructions:

  • smlalb, smlalt, umlalb, umlalt, smlslb, smlslt, umlslb, umlslt
  • sqdmlalb, sqdmlalt, sqdmlslb, sqdmlslt
  • sqdmlalbt, sqdmlslbt

Event Timeline

dancgr created this revision.Jan 30 2020, 2:17 PM
Herald added a project: Restricted Project. · View Herald TranscriptJan 30 2020, 2:17 PM

Thanks for these changes, @dancgr! I just have a couple of comments on the tests in sve2-mla-unpredicated.ll

llvm/test/CodeGen/AArch64/sve2-mla-unpredicated.ll
18

This test looks to be identical to the one above other than the name, and I noticed that a few others below are also repeated in a similar way. Was this on purpose?

718

I see you have added tests for the nxv2i64 and nxv4i32 types for each intrinsic, but not for nxv8i16. Can you please add these tests here also?

dancgr updated this revision to Diff 241730.Jan 31 2020, 7:36 AM
dancgr marked an inline comment as done.

Add missing i16 tests.

Thanks for these changes, @dancgr! I just have a couple of comments on the tests in sve2-mla-unpredicated.ll

I also added the missing i16 tests.

llvm/test/CodeGen/AArch64/sve2-mla-unpredicated.ll
18

No, that was an oversight. I should have removed those before uploading, will re-upload the patch.

dancgr marked an inline comment as done.Jan 31 2020, 7:42 AM
kmclaughlin accepted this revision.Jan 31 2020, 8:13 AM

Thanks for fixing the tests, LGTM!

This revision is now accepted and ready to land.Jan 31 2020, 8:13 AM
This revision was automatically updated to reflect the committed changes.