mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-15 04:30:12 +00:00
Add new function to allow removal of typed named elements
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5442 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
2f6bb2bce1
commit
fe9664ce7c
@ -41,6 +41,11 @@ public:
|
|||||||
insertEntry(N->getName(), N->getType(), N);
|
insertEntry(N->getName(), N->getType(), N);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void remove(Value *N);
|
||||||
|
Value *type_remove(const type_iterator &It) {
|
||||||
|
return removeEntry(find(It->second->getType()), It);
|
||||||
|
}
|
||||||
|
|
||||||
// insert - Insert a constant or type into the symbol table with the specified
|
// insert - Insert a constant or type into the symbol table with the specified
|
||||||
// name... There can be a many to one mapping between names and
|
// name... There can be a many to one mapping between names and
|
||||||
// (constant/type)s.
|
// (constant/type)s.
|
||||||
@ -51,9 +56,11 @@ public:
|
|||||||
insertEntry(Name, V->getType(), V);
|
insertEntry(Name, V->getType(), V);
|
||||||
}
|
}
|
||||||
|
|
||||||
void remove(Value *N);
|
/// remove - Remove a constant or type from the symbol table with the
|
||||||
Value *type_remove(const type_iterator &It) {
|
/// specified name.
|
||||||
return removeEntry(find(It->second->getType()), It);
|
Value *remove(const std::string &Name, Value *V) {
|
||||||
|
iterator TI = find(V->getType());
|
||||||
|
return removeEntry(TI, TI->second.find(Name));
|
||||||
}
|
}
|
||||||
|
|
||||||
// getUniqueName - Given a base name, return a string that is either equal to
|
// getUniqueName - Given a base name, return a string that is either equal to
|
||||||
|
Loading…
Reference in New Issue
Block a user