[llvm] r211222 - Add a symbols() range and use a range loop.
Rafael Espindola
rafael.espindola at gmail.com
Wed Jun 18 14:14:57 PDT 2014
Author: rafael
Date: Wed Jun 18 16:14:57 2014
New Revision: 211222
URL: http://llvm.org/viewvc/llvm-project?rev=211222&view=rev
Log:
Add a symbols() range and use a range loop.
Modified:
llvm/trunk/include/llvm/Object/SymbolicFile.h
llvm/trunk/tools/llvm-ar/llvm-ar.cpp
Modified: llvm/trunk/include/llvm/Object/SymbolicFile.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Object/SymbolicFile.h?rev=211222&r1=211221&r2=211222&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Object/SymbolicFile.h (original)
+++ llvm/trunk/include/llvm/Object/SymbolicFile.h Wed Jun 18 16:14:57 2014
@@ -136,6 +136,10 @@ public:
basic_symbol_iterator symbol_end() const {
return symbol_end_impl();
}
+ typedef iterator_range<basic_symbol_iterator> basic_symbol_iterator_range;
+ basic_symbol_iterator_range symbols() const {
+ return basic_symbol_iterator_range(symbol_begin(), symbol_end());
+ }
// construction aux.
static ErrorOr<SymbolicFile *> createIRObjectFile(MemoryBuffer *Object,
Modified: llvm/trunk/tools/llvm-ar/llvm-ar.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-ar/llvm-ar.cpp?rev=211222&r1=211221&r2=211222&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-ar/llvm-ar.cpp (original)
+++ llvm/trunk/tools/llvm-ar/llvm-ar.cpp Wed Jun 18 16:14:57 2014
@@ -710,17 +710,15 @@ static void writeSymbolTable(
print32BE(Out, 0);
}
- for (object::basic_symbol_iterator I = Obj->symbol_begin(),
- E = Obj->symbol_end();
- I != E; ++I) {
- uint32_t Symflags = I->getFlags();
+ for (const object::BasicSymbolRef &S : Obj->symbols()) {
+ uint32_t Symflags = S.getFlags();
if (Symflags & object::SymbolRef::SF_FormatSpecific)
continue;
if (!(Symflags & object::SymbolRef::SF_Global))
continue;
if (Symflags & object::SymbolRef::SF_Undefined)
continue;
- failIfError(I->printName(NameOS));
+ failIfError(S.printName(NameOS));
NameOS << '\0';
++NumSyms;
MemberOffsetRefs.push_back(std::make_pair(Out.tell(), MemberNum));
More information about the llvm-commits
mailing list