This adds a new summary flag NotEligibleToImport that subsumes
several existing flags (NoRename, HasInlineAsmMaybeReferencingInternal
and IsNotViableToInline). It also subsumes the checking of references
on the summary that was being done during the thin link by
eligibleForImport() for each candidate. It is much more efficient to
do that checking once during the per-module summary build and record
it in the summary.
I wonder whether test/ThinLTO/X86/autoupgrade.ll and
test/ThinLTO/X86/drop-debug-info.ll should be removed, since we
now must conservatively not import anything defined by an old
version of the bitcode?