Distinguish between BSD4.4 and SVR4 symbol tables

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18044 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Reid Spencer
2004-11-20 07:29:40 +00:00
parent e651c954aa
commit 9a29db43a7
9 changed files with 146 additions and 89 deletions

View File

@@ -65,11 +65,17 @@ void ArchiveMember::replaceWith(const sys::Path& newFile) {
data = 0;
path = newFile;
// Foreign symbol tables have an empty name
if (path.get() == ARFILE_SYMTAB_NAME)
flags |= ForeignSymbolTableFlag;
// SVR4 symbol tables have an empty name
if (path.get() == ARFILE_SVR4_SYMTAB_NAME)
flags |= SVR4SymbolTableFlag;
else
flags &= ~ForeignSymbolTableFlag;
flags &= ~SVR4SymbolTableFlag;
// BSD4.4 symbol tables have a special name
if (path.get() == ARFILE_BSD4_SYMTAB_NAME)
flags |= BSD4SymbolTableFlag;
else
flags &= ~BSD4SymbolTableFlag;
// LLVM symbol tables have a very specific name
if (path.get() == ARFILE_LLVM_SYMTAB_NAME)