mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 03:33:20 +01:00
IR: Deduplicate getParent() functions on derived classes of GlobalValue into the base class. NFCI.
llvm-svn: 285050
This commit is contained in:
parent
1f6ecd860a
commit
667b6a8f41
@ -74,8 +74,6 @@ private:
|
||||
|
||||
friend class SymbolTableListTraits<Function>;
|
||||
|
||||
void setParent(Module *parent);
|
||||
|
||||
/// hasLazyArguments/CheckLazyArguments - The argument list of a function is
|
||||
/// built on demand, so that the list isn't allocated until the first client
|
||||
/// needs it. The hasLazyArguments predicate returns true if the arg list
|
||||
|
@ -30,8 +30,6 @@ class GlobalAlias : public GlobalIndirectSymbol,
|
||||
void operator=(const GlobalAlias &) = delete;
|
||||
GlobalAlias(const GlobalAlias &) = delete;
|
||||
|
||||
void setParent(Module *parent);
|
||||
|
||||
GlobalAlias(Type *Ty, unsigned AddressSpace, LinkageTypes Linkage,
|
||||
const Twine &Name, Constant *Aliasee, Module *Parent);
|
||||
|
||||
|
@ -35,8 +35,6 @@ class GlobalIFunc final : public GlobalIndirectSymbol,
|
||||
void operator=(const GlobalIFunc &) = delete;
|
||||
GlobalIFunc(const GlobalIFunc &) = delete;
|
||||
|
||||
void setParent(Module *parent);
|
||||
|
||||
GlobalIFunc(Type *Ty, unsigned AddressSpace, LinkageTypes Linkage,
|
||||
const Twine &Name, Constant *Resolver, Module *Parent);
|
||||
|
||||
|
@ -140,6 +140,12 @@ protected:
|
||||
}
|
||||
|
||||
Module *Parent; // The containing module.
|
||||
|
||||
// Used by SymbolTableListTraits.
|
||||
void setParent(Module *parent) {
|
||||
Parent = parent;
|
||||
}
|
||||
|
||||
public:
|
||||
enum ThreadLocalMode {
|
||||
NotThreadLocal = 0,
|
||||
|
@ -38,8 +38,6 @@ class GlobalVariable : public GlobalObject, public ilist_node<GlobalVariable> {
|
||||
void operator=(const GlobalVariable &) = delete;
|
||||
GlobalVariable(const GlobalVariable &) = delete;
|
||||
|
||||
void setParent(Module *parent);
|
||||
|
||||
bool isConstantGlobal : 1; // Is this a global constant?
|
||||
bool isExternallyInitializedConstant : 1; // Is this a global whose value
|
||||
// can change from its initial
|
||||
|
@ -330,10 +330,6 @@ bool Function::arg_empty() const {
|
||||
return getFunctionType()->getNumParams() == 0;
|
||||
}
|
||||
|
||||
void Function::setParent(Module *parent) {
|
||||
Parent = parent;
|
||||
}
|
||||
|
||||
// dropAllReferences() - This function causes all the subinstructions to "let
|
||||
// go" of all references that they are maintaining. This allows one to
|
||||
// 'delete' a whole class at a time, even though there may be circular
|
||||
|
@ -265,10 +265,6 @@ GlobalVariable::GlobalVariable(Module &M, Type *Ty, bool constant,
|
||||
M.getGlobalList().push_back(this);
|
||||
}
|
||||
|
||||
void GlobalVariable::setParent(Module *parent) {
|
||||
Parent = parent;
|
||||
}
|
||||
|
||||
void GlobalVariable::removeFromParent() {
|
||||
getParent()->getGlobalList().remove(getIterator());
|
||||
}
|
||||
@ -367,10 +363,6 @@ GlobalAlias *GlobalAlias::create(const Twine &Name, GlobalValue *Aliasee) {
|
||||
return create(Aliasee->getLinkage(), Name, Aliasee);
|
||||
}
|
||||
|
||||
void GlobalAlias::setParent(Module *parent) {
|
||||
Parent = parent;
|
||||
}
|
||||
|
||||
void GlobalAlias::removeFromParent() {
|
||||
getParent()->getAliasList().remove(getIterator());
|
||||
}
|
||||
@ -404,10 +396,6 @@ GlobalIFunc *GlobalIFunc::create(Type *Ty, unsigned AddressSpace,
|
||||
return new GlobalIFunc(Ty, AddressSpace, Link, Name, Resolver, ParentModule);
|
||||
}
|
||||
|
||||
void GlobalIFunc::setParent(Module *parent) {
|
||||
Parent = parent;
|
||||
}
|
||||
|
||||
void GlobalIFunc::removeFromParent() {
|
||||
getParent()->getIFuncList().remove(getIterator());
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user