summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Blaikie <dblaikie@gmail.com>2014-01-09 03:03:27 +0000
committerDavid Blaikie <dblaikie@gmail.com>2014-01-09 03:03:27 +0000
commit75a032dc00431948fbd7ba55142d4fc2e5b75ca6 (patch)
treef3367b54884755cbdb9f6f5ebe62c581cf21be24
parent41d9e92ec019b3d13d1d7e469f4868a0006ed9f7 (diff)
downloadllvm-75a032dc00431948fbd7ba55142d4fc2e5b75ca6.tar.gz
llvm-75a032dc00431948fbd7ba55142d4fc2e5b75ca6.tar.bz2
llvm-75a032dc00431948fbd7ba55142d4fc2e5b75ca6.tar.xz
Revert "DwarfUnit: Move the DICompileUnit Node to the DwarfCompileUnit only"
This reverts commit r198830. Decided to go a different way with this... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198841 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/CodeGen/AsmPrinter/DwarfUnit.cpp12
-rw-r--r--lib/CodeGen/AsmPrinter/DwarfUnit.h12
2 files changed, 12 insertions, 12 deletions
diff --git a/lib/CodeGen/AsmPrinter/DwarfUnit.cpp b/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
index ed631b78fc..8df9c3b05c 100644
--- a/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
+++ b/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
@@ -40,23 +40,23 @@ GenerateDwarfTypeUnits("generate-type-units", cl::Hidden,
cl::init(false));
/// Unit - Unit constructor.
-DwarfUnit::DwarfUnit(unsigned UID, DIE *D, AsmPrinter *A, DwarfDebug *DW,
- DwarfFile *DWU)
- : UniqueID(UID), UnitDie(D), DebugInfoOffset(0), Asm(A), DD(DW), DU(DWU),
- IndexTyDie(0), Section(0), Skeleton(0) {
+DwarfUnit::DwarfUnit(unsigned UID, DIE *D, DICompileUnit Node, AsmPrinter *A,
+ DwarfDebug *DW, DwarfFile *DWU)
+ : UniqueID(UID), Node(Node), UnitDie(D), DebugInfoOffset(0), Asm(A), DD(DW),
+ DU(DWU), IndexTyDie(0), Section(0), Skeleton(0) {
DIEIntegerOne = new (DIEValueAllocator) DIEInteger(1);
}
DwarfCompileUnit::DwarfCompileUnit(unsigned UID, DIE *D, DICompileUnit Node,
AsmPrinter *A, DwarfDebug *DW,
DwarfFile *DWU)
- : DwarfUnit(UID, D, A, DW, DWU), Node(Node) {
+ : DwarfUnit(UID, D, Node, A, DW, DWU) {
insertDIE(Node, D);
}
DwarfTypeUnit::DwarfTypeUnit(unsigned UID, DIE *D, uint16_t Language,
AsmPrinter *A, DwarfDebug *DW, DwarfFile *DWU)
- : DwarfUnit(UID, D, A, DW, DWU), Language(Language) {}
+ : DwarfUnit(UID, D, DICompileUnit(), A, DW, DWU), Language(Language) {}
/// ~Unit - Destructor for compile unit.
DwarfUnit::~DwarfUnit() {
diff --git a/lib/CodeGen/AsmPrinter/DwarfUnit.h b/lib/CodeGen/AsmPrinter/DwarfUnit.h
index cba15fc9a8..524cdc1b59 100644
--- a/lib/CodeGen/AsmPrinter/DwarfUnit.h
+++ b/lib/CodeGen/AsmPrinter/DwarfUnit.h
@@ -65,6 +65,9 @@ protected:
/// UniqueID - a numeric ID unique among all CUs in the module
unsigned UniqueID;
+ /// Node - MDNode for the compile unit.
+ DICompileUnit Node;
+
/// Unit debug information entry.
const OwningPtr<DIE> UnitDie;
@@ -146,8 +149,8 @@ protected:
/// Skeleton unit associated with this unit.
DwarfUnit *Skeleton;
- DwarfUnit(unsigned UID, DIE *D, AsmPrinter *A, DwarfDebug *DW,
- DwarfFile *DWU);
+ DwarfUnit(unsigned UID, DIE *D, DICompileUnit CU, AsmPrinter *A,
+ DwarfDebug *DW, DwarfFile *DWU);
public:
virtual ~DwarfUnit();
@@ -216,6 +219,7 @@ public:
// Accessors.
unsigned getUniqueID() const { return UniqueID; }
virtual uint16_t getLanguage() const = 0;
+ DICompileUnit getNode() const { return Node; }
DIE *getUnitDie() const { return UnitDie.get(); }
const StringMap<const DIE *> &getGlobalNames() const { return GlobalNames; }
const StringMap<const DIE *> &getGlobalTypes() const { return GlobalTypes; }
@@ -530,13 +534,9 @@ private:
};
class DwarfCompileUnit : public DwarfUnit {
- /// Node - MDNode for the compile unit.
- DICompileUnit Node;
-
public:
DwarfCompileUnit(unsigned UID, DIE *D, DICompileUnit Node, AsmPrinter *A,
DwarfDebug *DW, DwarfFile *DWU);
- DICompileUnit getNode() const { return Node; }
virtual ~DwarfCompileUnit() LLVM_OVERRIDE;
/// createGlobalVariableDIE - create global variable DIE.