Changes in directory llvm/include/llvm:
PassSupport.h updated: 1.29 -> 1.30 --- Log message: simplify AnalysisGroup registration, eliminating one typeid call. --- Diffs of the changes: (+5 -13) PassSupport.h | 18 +++++------------- 1 files changed, 5 insertions(+), 13 deletions(-) Index: llvm/include/llvm/PassSupport.h diff -u llvm/include/llvm/PassSupport.h:1.29 llvm/include/llvm/PassSupport.h:1.30 --- llvm/include/llvm/PassSupport.h:1.29 Sun Aug 27 17:42:51 2006 +++ llvm/include/llvm/PassSupport.h Sun Aug 27 19:42:29 2006 @@ -241,23 +241,15 @@ ~RegisterAGBase(); }; - -template<typename Interface, typename DefaultImplementationPass = void, - bool Default = false> +template<typename Interface, bool Default = false> struct RegisterAnalysisGroup : public RegisterAGBase { - RegisterAnalysisGroup() : RegisterAGBase(typeid(Interface), - &typeid(DefaultImplementationPass), - Default) { + RegisterAnalysisGroup(RegisterPassBase &RPB) + : RegisterAGBase(typeid(Interface), &RPB.getPassInfo()->getTypeInfo(), + Default) { } -}; -/// Define a specialization of RegisterAnalysisGroup that is used to set the -/// name for the analysis group. -/// -template<typename Interface> -struct RegisterAnalysisGroup<Interface, void, false> : public RegisterAGBase { RegisterAnalysisGroup(const char *Name) - : RegisterAGBase(typeid(Interface)) { + : RegisterAGBase(typeid(Interface)) { setGroupName(Name); } }; _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits