[PATCH] D29428: [SimplifyCFG] Merge similar fatal error blocks ending in unreachable
Reid Kleckner via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue May 2 17:24:31 PDT 2017
rnk added a comment.
To evaluate this patch, I compiled clang with assertions enabled on Linux. It fires often there, and in interesting ways because after inlining there are many different assertions from many different files and lines in the same function.
It looks like I didn't save or paste the results for it anywhere. I remember they were disappointingly negative, both in code size and performance, so I never came back to re-evaluate this. In isolation, this patch should **reduce** code size, but I suspect that because simplifycfg runs before inlining, it affects inline cost analysis and we over-inline.
It's hard to get excited about pursuing this further because this pass is a bit redundant with MI-level tail merging, which has a better cost model and doesn't impact inlining.
https://reviews.llvm.org/D29428
More information about the llvm-commits
mailing list