[all-commits] [llvm/llvm-project] 9783cf: [mlir][ArmSME] Add support for lowering masked til...

Cullen Rhodes via All-commits all-commits at lists.llvm.org
Wed Nov 8 01:02:23 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9783cf448a14edb33ca16398bf39b6bf59af9644
      https://github.com/llvm/llvm-project/commit/9783cf448a14edb33ca16398bf39b6bf59af9644
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2023-11-08 (Wed, 08 Nov 2023)

  Changed paths:
    M mlir/lib/Conversion/ArmSMEToSCF/ArmSMEToSCF.cpp
    M mlir/test/Conversion/ArmSMEToSCF/arm-sme-to-scf.mlir
    A mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-transfer-read-2d.mlir

  Log Message:
  -----------
  [mlir][ArmSME] Add support for lowering masked tile_load ops (#70915)

This patch extends ArmSMEToSCF to support lowering of masked tile_load
ops. Only masks created by 'vector.create_mask' are currently supported.
There are two lowerings depending on the pad.

For pad of constant zero, the tile is first zeroed, then only active
rows are loaded.

For non-zero pad, the scalar pad is broadcast to a 1-D vector and a
regular 'vector.masked_load' (will be lowered to SVE, not SME) loads
each slice, with padding specified as a passthru and the 2-D mask
combined into a 1-D mask. The resulting slice is then inserted into the
tile with 'arm_sme.move_vector_to_tile_slice'.




More information about the All-commits mailing list