mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
Add new addTypeName method to Module class
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2037 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
b408b12556
commit
68e5ed8dbe
@ -63,6 +63,12 @@ public:
|
|||||||
//
|
//
|
||||||
Function *getFunction(const std::string &Name, const FunctionType *Ty);
|
Function *getFunction(const std::string &Name, const FunctionType *Ty);
|
||||||
|
|
||||||
|
// 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.
|
||||||
|
//
|
||||||
|
bool addTypeName(const std::string &Name, const Type *Ty);
|
||||||
|
|
||||||
// Get the underlying elements of the Module...
|
// Get the underlying elements of the Module...
|
||||||
inline const GlobalListType &getGlobalList() const { return GlobalList; }
|
inline const GlobalListType &getGlobalList() const { return GlobalList; }
|
||||||
inline GlobalListType &getGlobalList() { return GlobalList; }
|
inline GlobalListType &getGlobalList() { return GlobalList; }
|
||||||
|
@ -70,6 +70,21 @@ Function *Module::getFunction(const std::string &Name, const FunctionType *Ty) {
|
|||||||
return cast_or_null<Function>(SymTab->lookup(PointerType::get(Ty), Name));
|
return cast_or_null<Function>(SymTab->lookup(PointerType::get(Ty), Name));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 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.
|
||||||
|
//
|
||||||
|
bool Module::addTypeName(const std::string &Name, const Type *Ty) {
|
||||||
|
SymbolTable *ST = getSymbolTableSure();
|
||||||
|
|
||||||
|
if (ST->lookup(Type::TypeTy, Name)) return true; // Already in symtab...
|
||||||
|
|
||||||
|
// Not in symbol table? Set the name with the Symtab as an argument so the
|
||||||
|
// type knows what to update...
|
||||||
|
((Value*)Ty)->setName(Name, ST);
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// dropAllReferences() - This function causes all the subinstructions to "let
|
// dropAllReferences() - This function causes all the subinstructions to "let
|
||||||
|
Loading…
Reference in New Issue
Block a user