mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-02-01 05:01:59 +01:00
8fa994880c
into the AnalysisManager class template. Back when I first added this base class there were separate analysis managers and some plausible reason why it would be a useful factoring of common code between them. However, after a lot of refactoring cleaning, we now have *entirely* shared code. The base class was just an arbitrary division between code in one class template and a separate class template. It didn't add anything and forced lots of indirection through "derived_this" for no real gain. We can always factor a base CRTP class out with common code if there is ever some *other* analysis manager that wants to share a subset of logic. But for now, folding things into the primary template is a non-trivial simplification with no down sides I see. It shortens the code considerably, removes an unhelpful abstraction, and will make subsequent patches *dramatically* less complex which enhance the analysis manager infrastructure to effectively cope with invalidation. llvm-svn: 279221