This code has some issues, and I think we should just remove it until we need it. Basically it's trying to convert a transfer_read which isn't aligned sufficiently, into a larger transfer_read followed by a extract_strided_slice op. The problem is that the method of computing the alignment is not robust and has quite a few gaps and TODOs comments. I'd rather just remove this until we need it. It is currently blocking me, so either I need this to land or I must add more complexity (AffineMap::compose is being called when there is a symbol in the AffineMap, which isn't allowed).
This code has some issues, and I think we should just remove it until we need it. Basically it's trying to convert a transfer_read which isn't aligned sufficiently, into a larger transfer_read followed by a extract_strided_slice op. The problem is that the method of computing the alignment is not robust and has quite a few gaps and TODOs comments. I'd rather just remove this until we need it. It is currently blocking me, so either I need this to land or I must add more complexity (AffineMap::compose is being called when there is a symbol in the AffineMap, which isn't allowed).