diff options
| author | Jianhui Li <jian.hui.li@intel.com> | 2026-02-05 19:26:25 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-02-05 19:26:25 -0800 |
| commit | 61b8a5783972f03d2a5a72713fa0daa0905802ce (patch) | |
| tree | 32e5d8fec363136b70993770dd3f318425778310 /mlir/lib/CAPI/Dialect/Tosa.cpp | |
| parent | 15a30e3acf0a7d1d5e47fddb551463a8b6c770dd (diff) | |
| download | llvm-main.zip llvm-main.tar.gz llvm-main.tar.bz2 | |
This PR refactors layout propagation into two distinct components:
result/anchor layout setup and source layout inference from the result.
For operations that require a specific result layout due to semantic or
hardware constraints, the propagation logic explicitly sets up the
result or anchor layout. Otherwise, it infers the source layout from the
backward-propagated consumer layout.
The result or anchor layout may differ from the backward-propagated
consumer layout; any such discrepancies are resolved via the existing
layout-conflict mechanism.
**This PR introduces the following utility functions:**
Source layout inference:
> inferBroadcastSourceLayout()
> inferMultiReductionSourceLayout()
> inferBitCastSourceLayout()
> inferShapeCastSourceLayout()
> inferInsertStridedSliceSourceLayout()
Result / anchor layout setup:
> setupMultiReductionResultLayout()
> setupBitCastResultLayout()
> setupInsertStridedSliceResultLayout()
> setupLoadMatrixAnchorLayout()
> setupStoreMatrixAnchorLayout()
> setupLoadGatherAnchorLayout()
> setupStoreScatterAnchorLayout()
Part of subgroup distribution related code changes are separated and
created as PR https://github.com/llvm/llvm-project/pull/179018/changes.
Diffstat (limited to 'mlir/lib/CAPI/Dialect/Tosa.cpp')
0 files changed, 0 insertions, 0 deletions
