mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 20:32:21 +00:00
[PM] Remove the (deeply misguided) 'unregister' functionality from the
pass registry. This style of registry is somewhat questionable, but it being non-monotonic is crazy. No one is (or should be) unloading DSOs with passes and unregistering them here. I've checked with a few folks and I don't know of anyone using this functionality or any important use case where it is necessary. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@219096 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
24a19341bb
commit
891fb0b4e5
@ -78,10 +78,6 @@ public:
|
||||
/// registry. Required in order to use the pass with a PassManager.
|
||||
void registerPass(const PassInfo &PI, bool ShouldFree = false);
|
||||
|
||||
/// registerPass - Unregister a pass (by means of its PassInfo) with the
|
||||
/// registry.
|
||||
void unregisterPass(const PassInfo &PI);
|
||||
|
||||
/// registerAnalysisGroup - Register an analysis group (or a pass implementing
|
||||
// an analysis group) with the registry. Like registerPass, this is required
|
||||
// in order for a PassManager to be able to use this group/pass.
|
||||
|
@ -70,16 +70,6 @@ void PassRegistry::registerPass(const PassInfo &PI, bool ShouldFree) {
|
||||
ToFree.push_back(std::unique_ptr<const PassInfo>(&PI));
|
||||
}
|
||||
|
||||
void PassRegistry::unregisterPass(const PassInfo &PI) {
|
||||
sys::SmartScopedWriter<true> Guard(Lock);
|
||||
MapType::iterator I = PassInfoMap.find(PI.getTypeInfo());
|
||||
assert(I != PassInfoMap.end() && "Pass registered but not in map!");
|
||||
|
||||
// Remove pass from the map.
|
||||
PassInfoMap.erase(I);
|
||||
PassInfoStringMap.erase(PI.getPassArgument());
|
||||
}
|
||||
|
||||
void PassRegistry::enumerateWith(PassRegistrationListener *L) {
|
||||
sys::SmartScopedReader<true> Guard(Lock);
|
||||
for (auto PassInfoPair : PassInfoMap)
|
||||
|
Loading…
Reference in New Issue
Block a user