diff options
author | Chris Lattner <sabre@nondot.org> | 2003-12-31 08:42:27 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2003-12-31 08:42:27 +0000 |
commit | 3f804530c737b74a7417c215ac32f76c4672e370 (patch) | |
tree | bf2225da4ed315df6c224a23abbdc4e1418827e9 | |
parent | 0a5f0334ffa13f63d9b861b7d1392086ef822cbc (diff) |
Add some comments, add a new getGlobalVariable method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10670 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/llvm/Module.h | 32 |
1 files changed, 28 insertions, 4 deletions
diff --git a/include/llvm/Module.h b/include/llvm/Module.h index 2e448e6045..bdd72e1c22 100644 --- a/include/llvm/Module.h +++ b/include/llvm/Module.h @@ -95,6 +95,10 @@ public: PointerSize getPointerSize() const { return PtrSize; } void setPointerSize(PointerSize PS) { PtrSize = PS; } + //===--------------------------------------------------------------------===// + // Methods for easy access to the functions in the 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. @@ -123,6 +127,24 @@ public: /// Function *getNamedFunction(const std::string &Name); + //===--------------------------------------------------------------------===// + // Methods for easy access to the global variables in the module. + // + + /// getGlobalVariable - Look up the specified global variable in the module + /// symbol table. If it does not exist, return null. Note that this only + /// returns a global variable if it does not have internal linkage. The type + /// argument should be the underlying type of the global, ie, it should not + /// have the top-level PointerType, which represents the address of the + /// global. + /// + GlobalVariable *getGlobalVariable(const std::string &Name, const Type *Ty); + + + //===--------------------------------------------------------------------===// + // Methods for easy access to the types in the module. + // + /// addTypeName - Insert an entry in the symbol table mapping Str to Type. If /// there is already an entry for this name, true is returned and the symbol /// table is not modified. @@ -138,16 +160,18 @@ public: /// null if there is none by that name. const Type *getTypeByName(const std::string &Name) const; + + //===--------------------------------------------------------------------===// + // Methods for direct access to the globals list, functions list, and symbol + // table. + // + /// Get the underlying elements of the Module... inline const GlobalListType &getGlobalList() const { return GlobalList; } inline GlobalListType &getGlobalList() { return GlobalList; } inline const FunctionListType &getFunctionList() const { return FunctionList;} inline FunctionListType &getFunctionList() { return FunctionList;} - - //===--------------------------------------------------------------------===// - // Symbol table support functions... - /// getSymbolTable() - Get access to the symbol table for the module, where /// global variables and functions are identified. /// |