LLD resolves symbols before performing LTO compilation, assuming that the symbols in question are resolved by the resulting object files from LTO. However, there is a scenario where the prevailing symbols might be resolved incorrectly due to specific assembly symbols not appearing in the symbol table of the bitcode. This patch deals with such a scenario by generating an error instead of silently allowing a mis-linkage. If a prevailing symbol is resolved through post-loaded archives via LC linker options, a warning will now be issued. Reviewed By: #lld-macho, thevinster Differential Revision: https://reviews.llvm.org/D158003
25 KiB
25 KiB