LLVM: lib/Transforms/IPO/StripSymbols.cpp File Reference (original) (raw)
Go to the source code of this file.
| Functions | |
|---|---|
| static bool | OnlyUsedBy (Value *V, Value *Usr) |
| OnlyUsedBy - Return true if V is only used by Usr. | |
| static void | RemoveDeadConstant (Constant *C) |
| static void | StripSymtab (ValueSymbolTable &ST, bool PreserveDbgInfo) |
| static void | StripTypeNames (Module &M, bool PreserveDbgInfo) |
| static void | findUsedValues (GlobalVariable *LLVMUsed, SmallPtrSetImpl< const GlobalValue * > &UsedValues) |
| Find values that are marked as llvm.used. | |
| static bool | StripSymbolNames (Module &M, bool PreserveDbgInfo) |
| StripSymbolNames - Strip symbol names. | |
| static bool | stripDebugDeclareImpl (Module &M) |
| static bool | stripDeadDebugInfoImpl (Module &M) |
| Variables | |
|---|---|
| static cl::opt< bool > | StripGlobalConstants ("strip-global-constants", cl::init(false), cl::Hidden, cl::desc("Removes debug compile units which reference " "to non-existing global constants")) |
◆ findUsedValues()
◆ OnlyUsedBy()
◆ RemoveDeadConstant()
| void RemoveDeadConstant ( Constant * C) | static |
|---|
◆ stripDeadDebugInfoImpl()
Definition at line 184 of file StripSymbols.cpp.
References llvm::NamedMDNode::addOperand(), llvm::CallingConv::C, llvm::cast_or_null(), Changed, llvm::SmallVectorImpl< T >::clear(), llvm::NamedMDNode::clearOperands(), llvm::DebugInfoFinder::compile_units(), llvm::SmallVectorTemplateCommon< T, typename >::empty(), F, llvm::MDTuple::get(), I, llvm::detail::DenseSetImpl< ValueT, MapTy, ValueInfoT >::insert(), instructions, llvm::DebugInfoFinder::processInstruction(), llvm::DebugInfoFinder::processSubprogram(), llvm::SmallVectorTemplateBase< T, bool >::push_back(), and StripGlobalConstants.
Referenced by llvm::StripDeadDebugInfoPass::run().
◆ stripDebugDeclareImpl()
Definition at line 146 of file StripSymbols.cpp.
References assert(), llvm::CallingConv::C, llvm::cast(), llvm::dyn_cast(), llvm::Function::eraseFromParent(), llvm::Instruction::eraseFromParent(), llvm::CallBase::getArgOperand(), llvm::Intrinsic::getDeclarationIfExists(), llvm::RecursivelyDeleteTriviallyDeadInstructions(), RemoveDeadConstant(), llvm::Value::use_empty(), and llvm::Value::user_back().
Referenced by llvm::StripDebugDeclarePass::run().
◆ StripSymbolNames()
◆ StripSymtab()
◆ StripTypeNames()
| void StripTypeNames ( Module & M, bool PreserveDbgInfo ) | static |
|---|
◆ StripGlobalConstants
| cl::opt< bool > StripGlobalConstants("strip-global-constants", cl::init(false), cl::Hidden, cl::desc("Removes debug compile units which reference " "to non-existing global constants")) ( "strip-global-constants" , cl::init(false) , cl::Hidden , cl::desc("Removes debug compile units which reference " "to non-existing global constants") ) | static |
|---|