This revision adds the subtensor_insert operation.
This operation is discussed in https://llvm.discourse.group/t/an-update-on-linalg-on-tensors/1878
and is useful for extending linalg + transformations on tensors.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
mlir/include/mlir/Dialect/StandardOps/IR/Ops.td | ||
---|---|---|
3159 | typo: mixed | |
3212 | shouldn't it be always tensor-rank number of static offsets with all -1s in case we have none and rank - |static offsets| number of dynamic offsets? | |
3221 | typo: be | |
3222 | s/and be/and / | |
mlir/lib/Dialect/StandardOps/IR/Ops.cpp | ||
2687 | "||"? | |
2716 | "||"? | |
3358–3359 | Would this also work SmallVector<int64_t, 4> staticSizesVector(rank, ShapedType::kDynamicSize); ? | |
3360 | Here staticStridesVector == staticOffsetsVector, can we have just one vector? | |
3380–3385 | remove ? or is it "under construction"? | |
mlir/test/IR/core-ops.mlir | ||
934 | please, provide the test for the mixed case. |
mlir/include/mlir/Dialect/StandardOps/IR/Ops.td | ||
---|---|---|
3212 | rephrased things here and everywhere, thanks for noting! | |
3222 | rephrased a bit differently | |
mlir/lib/Dialect/StandardOps/IR/Ops.cpp | ||
2687 | if parseExtraOperand is not specified we want to skip calling it. | |
2716 | false is the "success" here so if parseExtraOperand is not specified we do not want an extra resolveOperand. | |
3360 | No, they don't have the same sentinel. |
This seems to have broken GCC 5 (https://buildkite.com/mlir/mlir-core/builds/8301#e6b6e5a7-85bd-4454-ae2b-da3b6cf84b8a). Could you update? Or should we revert?
mlir/include/mlir/Dialect/StandardOps/IR/Ops.td | ||
---|---|---|
3201 | insert -> inserts | |
3202–3203 | This description would make it look like the op should be called a tensor_insert. Consider rephrasing along the lines: `... while specifying offsets, ..., and sizes for the result tensor". | |
3208 | has the encodes -> encodes | |
3223 | encodes that the -> specifies that the | |
3226 | Doc description is missing an example. |
typo: mixed