1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 02:52:53 +02:00

Delete NamedMDSymTable while destrucing Module.

Disable  copy ctor and operator= for NamedMDSymTable. Hide typedef that should be public.

llvm-svn: 93041
This commit is contained in:
Devang Patel 2010-01-09 01:44:59 +00:00
parent 0e21161e32
commit bd58ff3f60
3 changed files with 7 additions and 1 deletions

View File

@ -135,10 +135,11 @@ private:
class MDSymbolTable { class MDSymbolTable {
/// @name Types /// @name Types
/// @{ /// @{
public: private:
/// @brief A mapping of names to metadata /// @brief A mapping of names to metadata
typedef StringMap<NamedMDNode*> MDMap; typedef StringMap<NamedMDNode*> MDMap;
public:
/// @brief An iterator over a ValueMap. /// @brief An iterator over a ValueMap.
typedef MDMap::iterator iterator; typedef MDMap::iterator iterator;
@ -150,6 +151,8 @@ public:
/// @{ /// @{
public: public:
MDSymbolTable(const MDNode &); // DO NOT IMPLEMENT
void operator=(const MDSymbolTable &); // DO NOT IMPLEMENT
MDSymbolTable() : mmap(0) {} MDSymbolTable() : mmap(0) {}
~MDSymbolTable(); ~MDSymbolTable();

View File

@ -71,6 +71,7 @@ Module::~Module() {
NamedMDList.clear(); NamedMDList.clear();
delete ValSymTab; delete ValSymTab;
delete TypeSymTab; delete TypeSymTab;
delete NamedMDSymTab;
} }
/// Target endian information... /// Target endian information...

View File

@ -119,3 +119,5 @@ void ValueSymbolTable::dump() const {
//DEBUG(dbgs() << "\n"); //DEBUG(dbgs() << "\n");
} }
} }
MDSymbolTable::~MDSymbolTable() { }