================
@@ -630,7 +639,10 @@ class FlattenContiguousRowMajorTransferReadPattern
if (transferReadOp.getMask())
return failure();
- int64_t firstDimToCollapse = sourceType.getRank() - vectorType.getRank();
----------------
newling wrote:
Thanks for the (additional!) explanation, I think I understand now
In
```
int64_t firstDimToCollapse = std::max(
lastDynIndex(sourceType.getShape()),
sourceType.getRank() - sourceType.getNumContiguousTrailingDims());
```
when might
`lastDynIndex(sourceType.getShape())` be larger than `sourceType.getRank() -
sourceType.getNumContiguousTrailingDims())` ?
> I've chosen to do maximum collapsing, as it seems simpler to do, and the
> resulting IR is arguably simpler.
Ok. Maybe it is simpler in these 2 senses. I guess minimising change (compared
to pre-PR and to pre-pass) could be another metric.
https://github.com/llvm/llvm-project/pull/142422
_______________________________________________
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits