[all-commits] [llvm/llvm-project] 2b0429: [mlir][Vector] Fix scalable InsertSlice/ExtractSli...

Diego Caballero via All-commits all-commits at lists.llvm.org
Fri Jan 31 14:21:57 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 2b04291830a2a34b681ae711dabfa1032f6c84f7
      https://github.com/llvm/llvm-project/commit/2b04291830a2a34b681ae711dabfa1032f6c84f7
  Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
  Date:   2025-01-31 (Fri, 31 Jan 2025)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/VectorInsertExtractStridedSliceRewritePatterns.cpp
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir

  Log Message:
  -----------
  [mlir][Vector] Fix scalable InsertSlice/ExtractSlice lowering (#124861)

It looks like scalable `vector.insertslice/extractslice` ops made their way
through lowering patterns that generate `vector.shuffle` ops. I'm not
sure why this wasn't caught by the verifier, probably because the
shuffle op was folded into something else as part of the same rewrite
and the IR wasn't verified.

This PR fixes the issue by preventing scalable vector.insertslice/extractslice
ops to be lowered to vector shuffles. Instead, they are now lowered to a
sequence of insertslice/extractelement ops using an existing patter.



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