From 47b6f84736197b5ece84860e6cb6052ebc60c646 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Tue, 24 Sep 2002 00:07:17 +0000 Subject: [PATCH] Make users of FindUsedTypes not have problems with linkage. This fixes cwriter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3899 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Analysis/FindUsedTypes.h | 33 +++++++++++++++------------ 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/include/llvm/Analysis/FindUsedTypes.h b/include/llvm/Analysis/FindUsedTypes.h index 6154eddc4a4..21fcabc1902 100644 --- a/include/llvm/Analysis/FindUsedTypes.h +++ b/include/llvm/Analysis/FindUsedTypes.h @@ -15,33 +15,38 @@ class Type; class FindUsedTypes : public Pass { std::set UsedTypes; public: - // getTypes - After the pass has been run, return the set containing all of - // the types used in the module. - // + /// getTypes - After the pass has been run, return the set containing all of + /// the types used in the module. + /// const std::set &getTypes() const { return UsedTypes; } - // Print the types found in the module. If the optional Module parameter is - // passed in, then the types are printed symbolically if possible, using the - // symbol table from the module. - // + /// Print the types found in the module. If the optional Module parameter is + /// passed in, then the types are printed symbolically if possible, using the + /// symbol table from the module. + /// void print(std::ostream &o, const Module *M) const; private: - // IncorporateType - Incorporate one type and all of its subtypes into the - // collection of used types. - // + /// IncorporateType - Incorporate one type and all of its subtypes into the + /// collection of used types. + /// void IncorporateType(const Type *Ty); public: - // run - This incorporates all types used by the specified module - // + /// run - This incorporates all types used by the specified module bool run(Module &M); - // getAnalysisUsage - Of course, we provide ourself... - // + /// getAnalysisUsage - We do not modify anything. virtual void getAnalysisUsage(AnalysisUsage &AU) const { AU.setPreservesAll(); } + + // stub - dummy function, just ignore it + static void stub(); }; +// Make sure that any clients of this file link in PostDominators.cpp +static IncludeFile +FIND_USED_TYPES_INCLUDE_FILE((void*)&FindUsedTypes::stub); + #endif