diff --git a/mlir/lib/Dialect/Linalg/Transforms/FusionOnTensors.cpp b/mlir/lib/Dialect/Linalg/Transforms/FusionOnTensors.cpp --- a/mlir/lib/Dialect/Linalg/Transforms/FusionOnTensors.cpp +++ b/mlir/lib/Dialect/Linalg/Transforms/FusionOnTensors.cpp @@ -420,7 +420,7 @@ tileSizes.begin(), tileSizes.begin() + rootOp.getNumLoops()); SmallVector rootInterchange = tileInterchange.empty() - ? llvm::to_vector<6>(llvm::seq(0, tileSizes.size())) + ? llvm::to_vector<6>(llvm::seq(0, rootOp.getNumLoops())) : SmallVector(tileInterchange.begin(), tileInterchange.begin() + rootOp.getNumLoops());