This is an archive of the discontinued LLVM Phabricator instance.

[AArch64]SME2 Multi-vector - Index/Single/Multi Array Vectors FMA sources
ClosedPublic

Authored by CarolineConcatto on Oct 12 2022, 8:41 AM.

Details

Summary

This patch adds the assembly/disassembly for the following instructions:

INT:
   SMLAL
   SMLSL
   UMLAL
   UMLSL
FP:
  BFMLAL
  BFMLSL
  FMLAL
  FMLSL

For multiple and indexed vector, Multiple and Single vector and
Multi vectors, for 1, 2 and 4 ZA registers.

The reference can be found here:

https://developer.arm.com/documentation/ddi0602/2022-09

It also adds a new immediate:

uimm3s2range for off3
uimm2s2range for off2

to represent the vector select offset.
The new operands have the range between the first and the last vector position.

Depends on: D135563

Diff Detail

Event Timeline

CarolineConcatto requested review of this revision.Oct 12 2022, 8:41 AM
Herald added a project: Restricted Project. · View Herald TranscriptOct 12 2022, 8:41 AM
Matt added a subscriber: Matt.Oct 12 2022, 9:09 AM
aemerson accepted this revision.Oct 19 2022, 3:57 PM
aemerson added a subscriber: aemerson.

LGTM unless Sander/Paul have any comments.

This revision is now accepted and ready to land.Oct 19 2022, 3:57 PM
sdesmalen accepted this revision.Oct 20 2022, 7:08 AM
sdesmalen added a subscriber: sdesmalen.

Looks fine to me as well.

This revision was landed with ongoing or failed builds.Oct 20 2022, 11:10 AM
This revision was automatically updated to reflect the committed changes.