[all-commits] [llvm/llvm-project] ccef72: [mlir][VectorOps] Don't drop scalable dims when lo...

Benjamin Maxwell via All-commits all-commits at lists.llvm.org
Mon Sep 11 09:49:04 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ccef726d09b1ffadfae6b1d1d986ae2f6d25a6a6
      https://github.com/llvm/llvm-project/commit/ccef726d09b1ffadfae6b1d1d986ae2f6d25a6a6
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2023-09-11 (Mon, 11 Sep 2023)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
    M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorMask.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorTransfer.cpp
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
    A mlir/test/Dialect/Vector/vector-scalable-create-mask-lowering.mlir

  Log Message:
  -----------
  [mlir][VectorOps] Don't drop scalable dims when lowering transfer_reads/writes (in VectorToLLVM)

This is a follow-on to D158753, and allows the lowering of a
transfer read/write of n-D vectors with a single trailing scalable dimension
to primitive vector ops.

The final conversion to LLVM depends on D158517 and D158752, without
these patches type conversion will fail (or an assert is hit in the LLVM
backend) if the final IR contains an array of scalable vectors.

This patch adds `transform.apply_patterns.vector.lower_create_mask`
which allows the lowering of vector.create_mask/constant_mask to be
tested independently of --convert-vector-to-llvm.

Reviewed By: c-rhodes, awarzynski, dcaballe

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




More information about the All-commits mailing list