Make the compile unit map a MapVector so that we can assume a stable

output ordering.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@200421 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Eric Christopher 2014-01-29 22:06:23 +00:00
parent 8e290f5a5d
commit 4ec1a52c5f
2 changed files with 5 additions and 3 deletions

View File

@ -2880,8 +2880,9 @@ void DwarfDebug::emitDebugRanges() {
unsigned char Size = Asm->getDataLayout().getPointerSize();
// Grab the specific ranges for the compile units in the module.
for (DenseMap<const MDNode *, DwarfCompileUnit *>::iterator I = CUMap.begin(),
E = CUMap.end();
for (MapVector<const MDNode *, DwarfCompileUnit *>::iterator
I = CUMap.begin(),
E = CUMap.end();
I != E; ++I) {
DwarfCompileUnit *TheCU = I->second;

View File

@ -21,6 +21,7 @@
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/ADT/MapVector.h"
#include "llvm/CodeGen/AsmPrinter.h"
#include "llvm/CodeGen/LexicalScopes.h"
#include "llvm/DebugInfo.h"
@ -334,7 +335,7 @@ class DwarfDebug : public AsmPrinterHandler {
DwarfCompileUnit *FirstCU;
// Maps MDNode with its corresponding DwarfCompileUnit.
DenseMap<const MDNode *, DwarfCompileUnit *> CUMap;
MapVector<const MDNode *, DwarfCompileUnit *> CUMap;
// Maps subprogram MDNode with its corresponding DwarfCompileUnit.
DenseMap<const MDNode *, DwarfCompileUnit *> SPMap;