[PATCH] D18706: [DWARF] Force a linkage_name on an inlined subprogram's abstract origin

Paul Robinson via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 1 15:12:32 PDT 2016


probinson added a comment.

The abstract instances are really no different from other subprogram declarations, which is why most of how they get handled is no different from other subprogram declarations.  I'm not keen on passing the flag down through several layers either, but I don't see else to figure out we really want the linkage name after all, at the point where we actually add it.  When I conditionalized linkage-name in the first place, Eric wanted the caller not to have to think too hard, and let addLinkageName itself do all the deciding.

Use case has to do with sample-based PGO, we want to be able to attribute data for an inlined instance to that function and not its caller.  The collected data uses the mangled name as the key, or something; I'm not directly involved in that work.

I'll look at redoing the test case using your model, thanks for the tip!

No size data yet, a self-host clang with extra options is befuddling me.


http://reviews.llvm.org/D18706





More information about the llvm-commits mailing list