rja accepted this revision. rja added a comment. This revision is now accepted and ready to land. LGTM. We should merge this patch to see the impact of this patch on real code bases. We can still revert it if too many problems. https://reviews.llvm.org/D45736