aeubanks added a comment. Looking at one of the examples in llvm-test-suite that regressed, this seems to be regressing some very simple code:
void f(double *a) { double c[20] = { 0.1051, 0.0157, 0.0185, 0.0089, 0.0219, 0.0141, 0.0097, 0.0758, 0.0168, 0.1188, 0.1635, 0.0112, 0.0333, 0.0777, 0.0260, 0.0568, 0.0523, 0.0223, 0.0324, 0.1195, }; for (int i = 0; i < 20; i++) a[i] = c[i]; } Before, it would just turn it into a memcpy. With this change, it becomes a bunch of individual stores. Looks like [1] is to blame. The extra AA causes it to fire and introduce the individual stores. [1]: https://github.com/llvm/llvm-project/blob/53673fd1bf6f2dd94d8bb6ced49cc54ec5fc866b/llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp#L422 Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D101017/new/ https://reviews.llvm.org/D101017 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits