[all-commits] [llvm/llvm-project] 5dc871: [mlir][mem2reg] Promote memory slots through trans...

jeanPerier via All-commits all-commits at lists.llvm.org
Thu May 28 01:10:54 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 5dc8711b4e553ba0ddab673564ac9b6309862e81
      https://github.com/llvm/llvm-project/commit/5dc8711b4e553ba0ddab673564ac9b6309862e81
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M mlir/include/mlir/Interfaces/MemorySlotInterfaces.h
    M mlir/include/mlir/Interfaces/MemorySlotInterfaces.td
    M mlir/lib/Interfaces/MemorySlotInterfaces.cpp
    M mlir/lib/Transforms/Mem2Reg.cpp
    M mlir/test/Transforms/mem2reg.mlir
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Dialect/Test/TestOps.td

  Log Message:
  -----------
  [mlir][mem2reg] Promote memory slots through transparent view operations (#196924)

This patch enables mem2reg to operate on load/store that are made
through cast/views of the memory slot (not directly using the SSA value
produced by the allocation op).

This is done by adding a new `PromotableAliaserInterface` interface that must
be implemented by operations that define view of the slot and through which
mem2reg should still happen.

This interface comes with three APIs. The first one allows the operation to
provide new MemorySlots that are aliasing an input MemorySlot. The slot pointers
of these new MemorySlot are results of the operation.

The other two APIs allows projecting the reaching values between the input and output
MemorySlot (one API for each direction).

Assisted by: Claude

RFC:
https://discourse.llvm.org/t/mlir-mem2reg-rfc-promote-memory-slots-through-transparent-view-operations/90761



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