This revision tightens up the handling of attributes for both named
and generic linalg ops.
To demonstrate the IR validity, a working e2e Linalg example is added.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
| mlir/test/Bindings/Python/dialects/linalg/opsrun.py | ||
|---|---|---|
| 27 | Oof. What is going on with the body not populating? (Side note, you can just say str(module)) | |
| mlir/test/Bindings/Python/dialects/linalg/opsrun.py | ||
|---|---|---|
| 27 | Well I did not hook it up yet so there is not magic :) it will come. | |
| mlir/include/mlir-c/AffineMap.h | ||
|---|---|---|
| 181 | How about the first argument being void * instead? This will allow the caller to pass in any container they want, not necessarily a contiguous, and also additional data if desired. | |
| mlir/lib/Bindings/Python/IRAffine.cpp | ||
| 547–549 | Nit: name shadowing almost got me here with compressed used twice | |
| mlir/test/Bindings/Python/dialects/linalg/opsrun.py | ||
|---|---|---|
| 55 | Can't all the convert- be inside the func(...) group? | |
| mlir/test/Bindings/Python/dialects/linalg/opsrun.py | ||
|---|---|---|
| 55 | nope, updated to maximally put stuff under func, the rest is module. | |
| mlir/include/mlir-c/AffineMap.h | ||
|---|---|---|
| 181 | MlirAffineMap *result should also become void *. The simplest user will just cast. | |
| mlir/include/mlir-c/AffineMap.h | ||
|---|---|---|
| 181 | missed it, thanks! | |
It doesn't look like any C-API or Python API unit tests of the new API were added? Would you mind adding something basic there?
How about the first argument being void * instead? This will allow the caller to pass in any container they want, not necessarily a contiguous, and also additional data if desired.