[all-commits] [llvm/llvm-project] bc946f: [mlir][vector] Add 1D vector.deinterleave lowering...

Mubashar Ahmad via All-commits all-commits at lists.llvm.org
Thu May 30 01:42:57 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: bc946f52870a51b49a0c7c3c508cef1905a11bc0
      https://github.com/llvm/llvm-project/commit/bc946f52870a51b49a0c7c3c508cef1905a11bc0
  Author: Mubashar Ahmad <mubashar.ahmad at arm.com>
  Date:   2024-05-30 (Thu, 30 May 2024)

  Changed paths:
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
    A mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/Emulated/test-scalable-deinterleave.mlir
    A mlir/test/Integration/Dialect/Vector/CPU/test-deinterleave.mlir

  Log Message:
  -----------
  [mlir][vector] Add 1D vector.deinterleave lowering (#93042)

This patch implements the lowering of vector.deinterleave 
for 1D vectors.

For fixed vector types, the operation is lowered to two
llvm shufflevector operations. One for even indexed
elements and the other for odd indexed elements. A poison
operation is used to satisfy the parameters of the
shufflevector parameters.
    
For scalable vectors, the llvm vector.deinterleave2
intrinsic is used for lowering. As such the results
found by extraction and used to form the result
struct for the intrinsic.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list