Go to the source code of this file.
◆ DEBUG_TYPE
#define DEBUG_TYPE "bdce" |
◆ bitTrackingDCE()
Definition at line 89 of file BDCE.cpp.
References clearAssumptionsOfUsers(), llvm::dbgs(), llvm::ConstantInt::get(), llvm::DemandedBits::getDemandedBits(), I, llvm::instructions(), llvm::DemandedBits::isInstructionDead(), llvm::APInt::isNullValue(), llvm::DemandedBits::isUseDead(), LLVM_DEBUG, llvm::SmallVectorTemplateBase< T >::push_back(), llvm::salvageDebugInfo(), and llvm::wouldInstructionBeTriviallyDead().
Referenced by llvm::BDCEPass::run().
◆ clearAssumptionsOfUsers()
If an instruction is trivialized (dead), then the chain of users of that instruction may need to be cleared of assumptions that can no longer be guaranteed correct.
Definition at line 40 of file BDCE.cpp.
References assert(), llvm::SmallPtrSetImpl< PtrType >::count(), llvm::Instruction::dropPoisonGeneratingFlags(), llvm::dyn_cast(), llvm::DemandedBits::getDemandedBits(), llvm::Value::getType(), llvm::SmallPtrSetImpl< PtrType >::insert(), llvm::APInt::isAllOnesValue(), llvm::Type::isIntOrIntVectorTy(), and llvm::Value::users().
Referenced by bitTrackingDCE().
◆ INITIALIZE_PASS_BEGIN()
◆ STATISTIC() [1/2]
STATISTIC |
( |
NumRemoved |
, |
|
|
"Number of instructions removed (unused)" |
|
|
) |
| |
◆ STATISTIC() [2/2]
◆ bdce
◆ Elimination
Bit Tracking Dead Code Elimination |
◆ false
Bit Tracking Dead Code false |