diff options
| author | David Majnemer <david.majnemer@gmail.com> | 2014-07-25 04:30:11 +0000 |
|---|---|---|
| committer | David Majnemer <david.majnemer@gmail.com> | 2014-07-25 04:30:11 +0000 |
| commit | bf32f773ccd4f200228259ef32249ad0bc7838a6 (patch) | |
| tree | 412cf6bf251b1d086686893def7500f6e8c65981 /llvm/tools/llvm-vtabledump/llvm-vtabledump.cpp | |
| parent | 29b61ce770899a6a17059f74d33ccfb6fca14841 (diff) | |
| download | bcm5719-llvm-bf32f773ccd4f200228259ef32249ad0bc7838a6.tar.gz bcm5719-llvm-bf32f773ccd4f200228259ef32249ad0bc7838a6.zip | |
llvm-vtabledump: use a std::map instead of a StringMap for VBTables
StringMap doesn't guarantee any particular iteration order,
this is suboptimal when comparing llvm-vtabledump's output for two
object files.
llvm-svn: 213921
Diffstat (limited to 'llvm/tools/llvm-vtabledump/llvm-vtabledump.cpp')
| -rw-r--r-- | llvm/tools/llvm-vtabledump/llvm-vtabledump.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/llvm/tools/llvm-vtabledump/llvm-vtabledump.cpp b/llvm/tools/llvm-vtabledump/llvm-vtabledump.cpp index ce2e9b6ddff..da08b7d9d74 100644 --- a/llvm/tools/llvm-vtabledump/llvm-vtabledump.cpp +++ b/llvm/tools/llvm-vtabledump/llvm-vtabledump.cpp @@ -15,7 +15,6 @@ #include "llvm-vtabledump.h" #include "Error.h" #include "llvm/ADT/ArrayRef.h" -#include "llvm/ADT/StringMap.h" #include "llvm/Object/Archive.h" #include "llvm/Object/ObjectFile.h" #include "llvm/Support/Debug.h" @@ -71,7 +70,7 @@ static void reportError(StringRef Input, std::error_code EC) { static void dumpVTables(const ObjectFile *Obj) { std::map<std::pair<StringRef, uint64_t>, StringRef> VFTableEntries; - StringMap<ArrayRef<aligned_little32_t>> VBTables; + std::map<StringRef, ArrayRef<aligned_little32_t>> VBTables; for (const object::SymbolRef &Sym : Obj->symbols()) { StringRef SymName; if (error(Sym.getName(SymName))) @@ -126,12 +125,13 @@ static void dumpVTables(const ObjectFile *Obj) { StringRef SymName = VFTableEntry.second; outs() << VFTableName << '[' << Offset << "]: " << SymName << '\n'; } - for (const StringMapEntry<ArrayRef<aligned_little32_t>> &VBTable : VBTables) { - StringRef VBTableName = VBTable.getKey(); + for (const std::pair<StringRef, ArrayRef<aligned_little32_t>> &VBTable : + VBTables) { + StringRef VBTableName = VBTable.first; uint32_t Idx = 0; - for (aligned_little32_t Offset : VBTable.getValue()) { + for (aligned_little32_t Offset : VBTable.second) { outs() << VBTableName << '[' << Idx << "]: " << Offset << '\n'; - Idx += sizeof(aligned_little32_t); + Idx += sizeof(Offset); } } } |

