mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-12-29 06:53:53 +00:00
Remove unused routines.
llvm-svn: 74351
This commit is contained in:
parent
d33e8e7d83
commit
4f5d296df0
@ -114,13 +114,6 @@ AllocaInst *DemotePHIToStack(PHINode *P, Instruction *AllocaPoint = 0);
|
||||
bool OnlyUsedByDbgInfoIntrinsics(Instruction *I,
|
||||
SmallVectorImpl<DbgInfoIntrinsic *> *DbgInUses = 0);
|
||||
|
||||
/// UserIsDebugInfo - Return true if U is a constant expr used by
|
||||
/// llvm.dbg.variable or llvm.dbg.global_variable
|
||||
bool UserIsDebugInfo(User *U);
|
||||
|
||||
/// RemoveDbgInfoUser - Remove an User which is representing debug info.
|
||||
void RemoveDbgInfoUser(User *U);
|
||||
|
||||
} // End llvm namespace
|
||||
|
||||
#endif
|
||||
|
@ -340,44 +340,3 @@ bool llvm::OnlyUsedByDbgInfoIntrinsics(Instruction *I,
|
||||
return true;
|
||||
}
|
||||
|
||||
/// UserIsDebugInfo - Return true if U is a constant expr used by
|
||||
/// llvm.dbg.variable or llvm.dbg.global_variable
|
||||
bool llvm::UserIsDebugInfo(User *U) {
|
||||
ConstantExpr *CE = dyn_cast<ConstantExpr>(U);
|
||||
|
||||
if (!CE || CE->getNumUses() != 1)
|
||||
return false;
|
||||
|
||||
Constant *Init = dyn_cast<Constant>(CE->use_back());
|
||||
if (!Init || Init->getNumUses() != 1)
|
||||
return false;
|
||||
|
||||
GlobalVariable *GV = dyn_cast<GlobalVariable>(Init->use_back());
|
||||
if (!GV || !GV->hasInitializer() || GV->getInitializer() != Init)
|
||||
return false;
|
||||
|
||||
DIVariable DV(GV);
|
||||
if (!DV.isNull())
|
||||
return true; // User is llvm.dbg.variable
|
||||
|
||||
DIGlobalVariable DGV(GV);
|
||||
if (!DGV.isNull())
|
||||
return true; // User is llvm.dbg.global_variable
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/// RemoveDbgInfoUser - Remove an User which is representing debug info.
|
||||
void llvm::RemoveDbgInfoUser(User *U) {
|
||||
assert (UserIsDebugInfo(U) && "Unexpected User!");
|
||||
ConstantExpr *CE = cast<ConstantExpr>(U);
|
||||
while (!CE->use_empty()) {
|
||||
Constant *C = cast<Constant>(CE->use_back());
|
||||
while (!C->use_empty()) {
|
||||
GlobalVariable *GV = cast<GlobalVariable>(C->use_back());
|
||||
GV->eraseFromParent();
|
||||
}
|
||||
C->destroyConstant();
|
||||
}
|
||||
CE->destroyConstant();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user