If we're not producing DWARF accel tables, don't waste memory

keeping track of those entries.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@200572 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Paul Robinson 2014-01-31 20:39:19 +00:00
parent 5ff4b203e6
commit c2c98e7884

View File

@ -1016,18 +1016,21 @@ void DwarfUnit::addType(DIE *Entity, DIType Ty, dwarf::Attribute Attribute) {
// to reference is in the string table. We do this since the names we // to reference is in the string table. We do this since the names we
// add may not only be identical to the names in the DIE. // add may not only be identical to the names in the DIE.
void DwarfUnit::addAccelName(StringRef Name, const DIE *Die) { void DwarfUnit::addAccelName(StringRef Name, const DIE *Die) {
if (!DD->useDwarfAccelTables()) return;
DU->getStringPoolEntry(Name); DU->getStringPoolEntry(Name);
std::vector<const DIE *> &DIEs = AccelNames[Name]; std::vector<const DIE *> &DIEs = AccelNames[Name];
DIEs.push_back(Die); DIEs.push_back(Die);
} }
void DwarfUnit::addAccelObjC(StringRef Name, const DIE *Die) { void DwarfUnit::addAccelObjC(StringRef Name, const DIE *Die) {
if (!DD->useDwarfAccelTables()) return;
DU->getStringPoolEntry(Name); DU->getStringPoolEntry(Name);
std::vector<const DIE *> &DIEs = AccelObjC[Name]; std::vector<const DIE *> &DIEs = AccelObjC[Name];
DIEs.push_back(Die); DIEs.push_back(Die);
} }
void DwarfUnit::addAccelNamespace(StringRef Name, const DIE *Die) { void DwarfUnit::addAccelNamespace(StringRef Name, const DIE *Die) {
if (!DD->useDwarfAccelTables()) return;
DU->getStringPoolEntry(Name); DU->getStringPoolEntry(Name);
std::vector<const DIE *> &DIEs = AccelNamespace[Name]; std::vector<const DIE *> &DIEs = AccelNamespace[Name];
DIEs.push_back(Die); DIEs.push_back(Die);
@ -1035,6 +1038,7 @@ void DwarfUnit::addAccelNamespace(StringRef Name, const DIE *Die) {
void DwarfUnit::addAccelType(StringRef Name, void DwarfUnit::addAccelType(StringRef Name,
std::pair<const DIE *, unsigned> Die) { std::pair<const DIE *, unsigned> Die) {
if (!DD->useDwarfAccelTables()) return;
DU->getStringPoolEntry(Name); DU->getStringPoolEntry(Name);
std::vector<std::pair<const DIE *, unsigned> > &DIEs = AccelTypes[Name]; std::vector<std::pair<const DIE *, unsigned> > &DIEs = AccelTypes[Name];
DIEs.push_back(Die); DIEs.push_back(Die);