ΒΆvoid RecursivelyDeleteTriviallyDeadInstructions(
SmallVectorImpl<llvm::WeakTrackingVH>&
DeadInsts,
const llvm::TargetLibraryInfo* TLI = nullptr,
llvm::MemorySSAUpdater* MSSAU = nullptr,
std::function<void(Value*)>
AboutToDeleteCallback =
std::function<void(llvm::Value*)>())
void RecursivelyDeleteTriviallyDeadInstructions(
SmallVectorImpl<llvm::WeakTrackingVH>&
DeadInsts,
const llvm::TargetLibraryInfo* TLI = nullptr,
llvm::MemorySSAUpdater* MSSAU = nullptr,
std::function<void(Value*)>
AboutToDeleteCallback =
std::function<void(llvm::Value*)>())
Description
Delete all of the instructions in `DeadInsts`, and all other instructions that deleting these in turn causes to be trivially dead. The initial instructions in the provided vector must all have empty use lists and satisfy `isInstructionTriviallyDead`. `DeadInsts` will be used as scratch storage for this routine and will be empty afterward.
Declared at: llvm/include/llvm/Transforms/Utils/Local.h:107
Parameters
- SmallVectorImpl<llvm::WeakTrackingVH>& DeadInsts
- const llvm::TargetLibraryInfo* TLI = nullptr
- llvm::MemorySSAUpdater* MSSAU = nullptr
- std::function<void(Value*)> AboutToDeleteCallback = std::function<void (llvm::Value *)>()