[Mlir-commits] [mlir] [mlir][acc] Introduce MappableType interface (PR #122146)
Valentin Clement バレンタイン クレメン
llvmlistbot at llvm.org
Wed Jan 8 11:04:07 PST 2025
================
@@ -274,28 +274,96 @@ reference counters are zero, a delete action is performed.
### Types
-There are a few acc dialect type categories to describe:
-* type of acc data clause operation input `varPtr`
- - The type of `varPtr` must be pointer-like. This is done by
- attaching the `PointerLikeType` interface to the appropriate MLIR
- type. Although memory/storage concept is a lower level abstraction,
- it is useful because the OpenACC model distinguishes between host
- and device memory explicitly - and the mapping between the two is
- done through pointers. Thus, by explicitly requiring it in the
- dialect, the appropriate language frontend must create storage or
- use type that satisfies the mapping constraint.
+Since the `acc dialect` is meant to be used alongside other dialects which
+represent the source language, appropriate use of types and type interfaces is
+key to ensuring compatibility. This section describes those considerations.
+
+#### Data Clause Operation Types
+
+Data clause operations (eg. `acc.copyin`) rely on the following type
+considerations:
+* type of acc data clause operation input `var`
+ - The type of `var` must be one with `PointerLikeType` or `MappableType`
+ interfaces attached. The first, `PointerLikeType`, is useful because
----------------
clementval wrote:
indent is off
https://github.com/llvm/llvm-project/pull/122146
More information about the Mlir-commits
mailing list