[all-commits] [llvm/llvm-project] fc0cde: [AArch64]SME2 Multi-vector - Index/Single/Multi Ar...

CarolineConcatto via All-commits all-commits at lists.llvm.org
Fri Oct 21 06:27:20 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: fc0cde8af56dedd1ec4ed6b5a881b319af0b4218
      https://github.com/llvm/llvm-project/commit/fc0cde8af56dedd1ec4ed6b5a881b319af0b4218
  Author: Caroline Concatto <caroline.concatto at arm.com>
  Date:   2022-10-21 (Fri, 21 Oct 2022)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.h
    M llvm/lib/Target/AArch64/SMEInstrFormats.td
    A llvm/test/MC/AArch64/SME2/bfmlal-diagnostics.s
    A llvm/test/MC/AArch64/SME2/bfmlal.s
    A llvm/test/MC/AArch64/SME2/bfmlsl-diagnostics.s
    A llvm/test/MC/AArch64/SME2/bfmlsl.s
    A llvm/test/MC/AArch64/SME2/fmlal-diagnostics.s
    A llvm/test/MC/AArch64/SME2/fmlal.s
    A llvm/test/MC/AArch64/SME2/fmlsl-diagnostics.s
    A llvm/test/MC/AArch64/SME2/fmlsl.s
    A llvm/test/MC/AArch64/SME2/smlal-diagnostics.s
    A llvm/test/MC/AArch64/SME2/smlal.s
    A llvm/test/MC/AArch64/SME2/smlsl-diagnostics.s
    A llvm/test/MC/AArch64/SME2/smlsl.s
    A llvm/test/MC/AArch64/SME2/umlal-diagnostics.s
    A llvm/test/MC/AArch64/SME2/umlal.s
    A llvm/test/MC/AArch64/SME2/umlsl-diagnostics.s
    A llvm/test/MC/AArch64/SME2/umlsl.s

  Log Message:
  -----------
  [AArch64]SME2 Multi-vector - Index/Single/Multi Array Vectors FMA sources

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

Reviewed By: aemerson, sdesmalen

Re-landing the patch as the problem with https://reviews.llvm.org/D135563
is fixed in this commit: 1e4f82c2578cf5045ffe

Differential Revision: https://reviews.llvm.org/D135785




More information about the All-commits mailing list