Groverkss wrote: > region is needed to lower to linalg.generic This is not really true. LinalgStructuredInterface exposes `getRegionBuilder` which should be used to lower to linalg.generic https://github.com/llvm/llvm-project/pull/124661