[PATCH] D18012: [lto] Make sure that ctors are added to the combined module.

Rafael Ávila de Espíndola via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 10 08:04:50 PST 2016


rafael added a comment.

So, the horrible special case is appending linkage. Long term we should delete it. For now you can check just for it instead of all SF_FormatSpecific.

The other issue is how we propagate information on which symbols are needed. Currently we create SymbolBodies. There are a few problem with that

- As you point out, we don't want to create them for appending linkage.
- It requires doing a hash lookup to get the GV on the other side.

There are two possible solutions that fix both issues

- Use a single LLVMContext and keep the modules alive.
- Create a IRObjectFile again addBitcodeFile instead of using getLazyBitcodeModule. That would let us match GV and SymbolBody by the index instead of name.


http://reviews.llvm.org/D18012





More information about the llvm-commits mailing list