[all-commits] [llvm/llvm-project] 2b8f88: [mlir][Ptr] Add the `MemorySpaceAttrInterface` int...
Fabian Mora via All-commits
all-commits at lists.llvm.org
Wed Mar 19 07:55:46 PDT 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 2b8f887915020431112c35397368edd34b313f9a
https://github.com/llvm/llvm-project/commit/2b8f887915020431112c35397368edd34b313f9a
Author: Fabian Mora <fmora.dev at gmail.com>
Date: 2025-03-19 (Wed, 19 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/Ptr/IR/CMakeLists.txt
A mlir/include/mlir/Dialect/Ptr/IR/MemorySpaceInterfaces.h
A mlir/include/mlir/Dialect/Ptr/IR/MemorySpaceInterfaces.td
M mlir/include/mlir/Dialect/Ptr/IR/PtrAttrs.h
M mlir/include/mlir/Dialect/Ptr/IR/PtrDialect.td
A mlir/include/mlir/Dialect/Ptr/IR/PtrEnums.td
M mlir/include/mlir/Dialect/Ptr/IR/PtrOps.td
M mlir/include/mlir/Dialect/Ptr/IR/PtrTypes.h
M mlir/lib/Dialect/Ptr/IR/CMakeLists.txt
M mlir/lib/Dialect/Ptr/IR/PtrDialect.cpp
M mlir/lib/Dialect/Ptr/IR/PtrTypes.cpp
M mlir/test/Dialect/Ptr/layout.mlir
M mlir/test/Dialect/Ptr/types.mlir
M mlir/test/lib/Dialect/Test/CMakeLists.txt
M mlir/test/lib/Dialect/Test/TestAttrDefs.td
M mlir/test/lib/Dialect/Test/TestAttributes.cpp
M mlir/test/lib/Dialect/Test/TestAttributes.h
Log Message:
-----------
[mlir][Ptr] Add the `MemorySpaceAttrInterface` interface and dependencies. (#86870)
This patch introduces the `MemorySpaceAttrInterface` interface. This
interface is responsible for handling the semantics of `ptr` operations.
For example, this interface can be used to create read-only memory
spaces, making any other operation other than a load a verification
error, see `TestConstMemorySpaceAttr` for a possible implementation of
this concept.
This patch also introduces Enum dependencies `AtomicOrdering`, and
`AtomicBinOp`, both enumerations are clones of the Enums with the same
name in the LLVM Dialect.
Also, see:
- [[RFC] `ptr` dialect & modularizing ptr ops in the LLVM
dialect](https://discourse.llvm.org/t/rfc-ptr-dialect-modularizing-ptr-ops-in-the-llvm-dialect/75142)
for rationale.
- https://github.com/llvm/llvm-project/pull/73057 for a prototype
implementation of the full change.
**Note: Ignore the first commit, that's being reviewed in
https://github.com/llvm/llvm-project/pull/86860 .**
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