| Add LL::quotient and remove uses of divideRight and sublayoutIsIdentity (#4968)
We add a new abstraction LL::quotient that abstracts the idea of "a
linear layout does not permute certain dimensions". Doing so, allows us
to remove divideRight and subsume them into this higher-level
abstraction.
We also fix a bug in isCrossCTAConversion.
We also remove some code duplication from transferWithinThreads and
cvtReorderRegisters in favour of a more generic approach.
We fix a bug in sublayout that meant that sublayout would reorder
outDims
at will by using a set instead of a vector.
I am missing adding tests for LL::quotient, will do in a minute. | 1 年前 |