[MLIR][LLVM] Remove the type consistency pass (#93283)
This commit removes the LLVM dialect's type consistency pass. This pass was originally introduced to make type information on memory operations consistent. The main benefactor of this consistency where Mem2Reg and SROA, which were in the meantime improved to no longer require consistent type information. Apart from providing a no longer required functionality, the pass had some fundamental flaws that lead to issues: * It introduced trivial GEPs (only zero indices) that could be folded again. * Aggressively splitting stores lead to substantial performance regressions in some cases. Subsequent memory coalescing were not able to recover this information, due to using non-trivial bit-fiddling.
parent
ebc6c28a
Please register or sign in to comment