arsenm added a comment. This looks like it handles using wider types unlike llvm::createMemCpyLoop. Could you merge this into that instead and add new TTI interfaces for controlling which types to pick? Repository: rL LLVM https://reviews.llvm.org/D31772