During composition we currently blindly convert symbols coming from affine_apply to dimensions. This may generate an affineexpr which multiply two dimensions. Currently this result into a crash in simplifyMul(). To fix it we just check and skip this simplifyMul for this case.
Another solution would be to detect this case an no convert symbols to dimension however this would block some transformations that are currently already enabled.
Details
Details
- Reviewers
nicolasvasilache bondhugula rriddle
Diff Detail
Diff Detail
Event Timeline
Comment Actions
I had another patch that would skip converting symbols to dimension when it is multiplied/divided by another dimension however this prevented the transformation in the original version of symbolic_semi_affine. Please let me know if you think there is a better solution as I'm not super familiar with affine expressions.
Comment Actions
This is an unreasonable relaxation IMO.
I'm looking into rewriting the part that requires AffineNormalizer, stay tuned.