Add a herper function. NFC.

llvm-svn: 242100
This commit is contained in:
Rafael Espindola 2015-07-14 01:06:16 +00:00
parent 5fe5b90b18
commit 2b05416be8
2 changed files with 8 additions and 8 deletions

View File

@ -207,6 +207,7 @@ public:
bool hasSymbolTable() const;
child_iterator getSymbolTableChild() const { return SymbolTable; }
StringRef getSymbolTable() const { return SymbolTable->getBuffer(); }
uint32_t getNumberOfSymbols() const;
private:

View File

@ -353,11 +353,11 @@ Archive::child_iterator Archive::child_end() const {
}
StringRef Archive::Symbol::getName() const {
return Parent->SymbolTable->getBuffer().begin() + StringIndex;
return Parent->getSymbolTable().begin() + StringIndex;
}
ErrorOr<Archive::child_iterator> Archive::Symbol::getMember() const {
const char *Buf = Parent->SymbolTable->getBuffer().begin();
const char *Buf = Parent->getSymbolTable().begin();
const char *Offsets = Buf;
if (Parent->kind() == K_MIPS64)
Offsets += sizeof(uint64_t);
@ -421,7 +421,7 @@ Archive::Symbol Archive::Symbol::getNext() const {
// and the second being the offset into the archive of the member that
// define the symbol. After that the next uint32_t is the byte count of
// the string table followed by the string table.
const char *Buf = Parent->SymbolTable->getBuffer().begin();
const char *Buf = Parent->getSymbolTable().begin();
uint32_t RanlibCount = 0;
RanlibCount = read32le(Buf) / 8;
// If t.SymbolIndex + 1 will be past the count of symbols (the RanlibCount)
@ -438,8 +438,7 @@ Archive::Symbol Archive::Symbol::getNext() const {
}
} else {
// Go to one past next null.
t.StringIndex =
Parent->SymbolTable->getBuffer().find('\0', t.StringIndex) + 1;
t.StringIndex = Parent->getSymbolTable().find('\0', t.StringIndex) + 1;
}
++t.SymbolIndex;
return t;
@ -449,7 +448,7 @@ Archive::symbol_iterator Archive::symbol_begin() const {
if (!hasSymbolTable())
return symbol_iterator(Symbol(this, 0, 0));
const char *buf = SymbolTable->getBuffer().begin();
const char *buf = getSymbolTable().begin();
if (kind() == K_GNU) {
uint32_t symbol_count = 0;
symbol_count = read32be(buf);
@ -481,7 +480,7 @@ Archive::symbol_iterator Archive::symbol_begin() const {
symbol_count = read32le(buf);
buf += 4 + (symbol_count * 2); // Skip indices.
}
uint32_t string_start_offset = buf - SymbolTable->getBuffer().begin();
uint32_t string_start_offset = buf - getSymbolTable().begin();
return symbol_iterator(Symbol(this, 0, string_start_offset));
}
@ -492,7 +491,7 @@ Archive::symbol_iterator Archive::symbol_end() const {
}
uint32_t Archive::getNumberOfSymbols() const {
const char *buf = SymbolTable->getBuffer().begin();
const char *buf = getSymbolTable().begin();
if (kind() == K_GNU)
return read32be(buf);
if (kind() == K_MIPS64)