summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2013-11-02 21:16:09 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2013-11-02 21:16:09 +0000
commitbc884fd9f7bdb64d250be639edc8dc85a20a1975 (patch)
tree7ca35c37e582f10e30efc71b734ba0712a079557 /lib
parent66b8ec520f84c704e2a7f89dfa9ee1452ef5bc43 (diff)
downloadllvm-bc884fd9f7bdb64d250be639edc8dc85a20a1975.tar.gz
llvm-bc884fd9f7bdb64d250be639edc8dc85a20a1975.tar.bz2
llvm-bc884fd9f7bdb64d250be639edc8dc85a20a1975.tar.xz
move getSymbolNMTypeChar to the one program that needs it: nm.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193933 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Object/COFFObjectFile.cpp68
-rw-r--r--lib/Object/MachOObjectFile.cpp37
2 files changed, 0 insertions, 105 deletions
diff --git a/lib/Object/COFFObjectFile.cpp b/lib/Object/COFFObjectFile.cpp
index d48f44c75a..f33caee334 100644
--- a/lib/Object/COFFObjectFile.cpp
+++ b/lib/Object/COFFObjectFile.cpp
@@ -207,74 +207,6 @@ error_code COFFObjectFile::getSymbolSize(DataRefImpl Symb,
return object_error::success;
}
-error_code COFFObjectFile::getSymbolNMTypeChar(DataRefImpl Symb,
- char &Result) const {
- const coff_symbol *symb = toSymb(Symb);
- StringRef name;
- if (error_code ec = getSymbolName(Symb, name))
- return ec;
- char ret = StringSwitch<char>(name)
- .StartsWith(".debug", 'N')
- .StartsWith(".sxdata", 'N')
- .Default('?');
-
- if (ret != '?') {
- Result = ret;
- return object_error::success;
- }
-
- uint32_t Characteristics = 0;
- if (symb->SectionNumber > 0) {
- const coff_section *Section = NULL;
- if (error_code ec = getSection(symb->SectionNumber, Section))
- return ec;
- Characteristics = Section->Characteristics;
- }
-
- switch (symb->SectionNumber) {
- case COFF::IMAGE_SYM_UNDEFINED:
- // Check storage classes.
- if (symb->StorageClass == COFF::IMAGE_SYM_CLASS_WEAK_EXTERNAL) {
- Result = 'w';
- return object_error::success; // Don't do ::toupper.
- } else if (symb->Value != 0) // Check for common symbols.
- ret = 'c';
- else
- ret = 'u';
- break;
- case COFF::IMAGE_SYM_ABSOLUTE:
- ret = 'a';
- break;
- case COFF::IMAGE_SYM_DEBUG:
- ret = 'n';
- break;
- default:
- // Check section type.
- if (Characteristics & COFF::IMAGE_SCN_CNT_CODE)
- ret = 't';
- else if ( Characteristics & COFF::IMAGE_SCN_MEM_READ
- && ~Characteristics & COFF::IMAGE_SCN_MEM_WRITE) // Read only.
- ret = 'r';
- else if (Characteristics & COFF::IMAGE_SCN_CNT_INITIALIZED_DATA)
- ret = 'd';
- else if (Characteristics & COFF::IMAGE_SCN_CNT_UNINITIALIZED_DATA)
- ret = 'b';
- else if (Characteristics & COFF::IMAGE_SCN_LNK_INFO)
- ret = 'i';
-
- // Check for section symbol.
- else if ( symb->StorageClass == COFF::IMAGE_SYM_CLASS_STATIC
- && symb->Value == 0)
- ret = 's';
- }
-
- if (symb->StorageClass == COFF::IMAGE_SYM_CLASS_EXTERNAL)
- ret = ::toupper(static_cast<unsigned char>(ret));
-
- Result = ret;
- return object_error::success;
-}
-
error_code COFFObjectFile::getSymbolSection(DataRefImpl Symb,
section_iterator &Result) const {
const coff_symbol *symb = toSymb(Symb);
diff --git a/lib/Object/MachOObjectFile.cpp b/lib/Object/MachOObjectFile.cpp
index f48bb8a7fe..d2cb8bde6d 100644
--- a/lib/Object/MachOObjectFile.cpp
+++ b/lib/Object/MachOObjectFile.cpp
@@ -591,43 +591,6 @@ error_code MachOObjectFile::getSymbolType(DataRefImpl Symb,
return object_error::success;
}
-error_code MachOObjectFile::getSymbolNMTypeChar(DataRefImpl Symb,
- char &Res) const {
- nlist_base Entry = getSymbolTableEntryBase(this, Symb);
- uint8_t NType = Entry.n_type;
-
- char Char;
- switch (NType & MachO::N_TYPE) {
- case MachO::N_UNDF:
- Char = 'u';
- break;
- case MachO::N_ABS:
- Char = 's';
- break;
- case MachO::N_SECT: {
- section_iterator Sec = end_sections();
- getSymbolSection(Symb, Sec);
- DataRefImpl Ref = Sec->getRawDataRefImpl();
- StringRef SectionName;
- getSectionName(Ref, SectionName);
- StringRef SegmentName = getSectionFinalSegmentName(Ref);
- if (SegmentName == "__TEXT" && SectionName == "__text")
- Char = 't';
- else
- Char = 's';
- }
- break;
- default:
- Char = '?';
- break;
- }
-
- if (NType & (MachO::N_EXT | MachO::N_PEXT))
- Char = toupper(static_cast<unsigned char>(Char));
- Res = Char;
- return object_error::success;
-}
-
error_code MachOObjectFile::getSymbolFlags(DataRefImpl DRI,
uint32_t &Result) const {
nlist_base Entry = getSymbolTableEntryBase(this, DRI);