diff --git a/include/llvm/Module.h b/include/llvm/Module.h index d7d9240f3ac..a2a8e507285 100644 --- a/include/llvm/Module.h +++ b/include/llvm/Module.h @@ -18,6 +18,7 @@ class GlobalVariable; class GlobalValueRefMap; // Used by ConstantVals.cpp class ConstantPointerRef; +class FunctionType; class Module : public Value, public SymTabValue { public: @@ -52,6 +53,16 @@ public: Module(); ~Module(); + // getOrInsertFunction - Look up the specified function in the module symbol + // table. If it does not exist, add a prototype for the function and return + // it. + Function *getOrInsertFunction(const std::string &Name, const FunctionType *T); + + // getFunction - Look up the specified function in the module symbol table. + // If it does not exist, return null. + // + Function *getFunction(const std::string &Name, const FunctionType *Ty); + // Get the underlying elements of the Module... inline const GlobalListType &getGlobalList() const { return GlobalList; } inline GlobalListType &getGlobalList() { return GlobalList; }