tejohnson added a comment.

In https://reviews.llvm.org/D35081#805761, @yunlian wrote:

> I've sent a reproduce test case to tejohnson.


FYI I tracked down what is going on here and reproduced with a small test case. 
Essentially, two copies of a linkonce odr function were optimized somewhat 
differently by the compile step and have different instruction counts, with the 
prevailing one being larger. Depending on the order they are encountered during 
the thin link's callgraph traversal, we may initially decide to import the 
smaller non-prevailing copy, and later decide to import the larger prevailing 
copy. This should be fixed in the function importer, which needs to make a 
decision about which copy should be imported (the fix is simple, I just need to 
decide which fix is "right").

This is different than the situation Florian encountered, which is due to 
passing the full combined index to clang when invoking a distributed backend 
process, which we don't want users to do. Florian, I'd still like to understand 
better what the third party you are fixing this for is trying to do, so I can 
advise.


https://reviews.llvm.org/D35081



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to