mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-23 17:24:48 +00:00
Simplify the handling of iterators in ObjectFile.
None of the object file formats reported error on iterator increment. In retrospect, that is not too surprising: no object format stores symbols or sections in a linked list or other structure that requires chasing pointers. As a consequence, all error checking can be done on begin() and end(). This reduces the text segment of bin/llvm-readobj in my machine from 521233 to 518526 bytes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@200442 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -151,11 +151,9 @@ static int printLineInfoForInput() {
|
||||
OwningPtr<DIContext> Context(DIContext::getDWARFContext(LoadedObject->getObjectFile()));
|
||||
|
||||
// Use symbol info to iterate functions in the object.
|
||||
error_code ec;
|
||||
for (object::symbol_iterator I = LoadedObject->begin_symbols(),
|
||||
E = LoadedObject->end_symbols();
|
||||
I != E && !ec;
|
||||
I.increment(ec)) {
|
||||
I != E; ++I) {
|
||||
object::SymbolRef::Type SymType;
|
||||
if (I->getType(SymType)) continue;
|
||||
if (SymType == object::SymbolRef::ST_Function) {
|
||||
|
Reference in New Issue
Block a user