LLVM: lib/Transforms/Utils/SSAUpdaterBulk.cpp File Reference (original) (raw)
Go to the source code of this file.
| Macros | |
|---|---|
| #define | DEBUG_TYPE "ssaupdaterbulk" |
| Functions | |
|---|---|
| static BasicBlock * | getUserBB (Use *U) |
| Helper function for finding a block which should have a value for the given user. | |
| static void | ComputeLiveInBlocks (const SmallPtrSetImpl< BasicBlock * > &UsingBlocks, const SmallPtrSetImpl< BasicBlock * > &DefBlocks, SmallPtrSetImpl< BasicBlock * > &LiveInBlocks, PredIteratorCache &PredCache) |
| Given sets of UsingBlocks and DefBlocks, compute the set of LiveInBlocks. | |
| static void | simplifyPass (MutableArrayRef< PHINode * > Worklist, const DataLayout &DL) |
| static bool | PHIAreRefEachOther (const iterator_range< BasicBlock::phi_iterator > NewPHIs) |
| static bool | replaceIfIdentical (PHINode &PHI, PHINode &ReplPHI) |
| bool | EliminateNewDuplicatePHINodes (BasicBlock *BB, BasicBlock::phi_iterator FirstExistingPN) |
| static void | deduplicatePass (ArrayRef< PHINode * > Worklist) |
◆ DEBUG_TYPE
#define DEBUG_TYPE "ssaupdaterbulk"
◆ ComputeLiveInBlocks()
Given sets of UsingBlocks and DefBlocks, compute the set of LiveInBlocks.
This is basically a subgraph limited by DefBlocks and UsingBlocks.
Definition at line 71 of file SSAUpdaterBulk.cpp.
References llvm::SmallPtrSetImpl< PtrType >::begin(), llvm::SmallPtrSetImpl< PtrType >::count(), llvm::SmallVectorTemplateCommon< T, typename >::empty(), llvm::SmallPtrSetImpl< PtrType >::end(), llvm::PredIteratorCache::get(), llvm::SmallPtrSetImpl< PtrType >::insert(), P, llvm::SmallVectorImpl< T >::pop_back_val(), and llvm::SmallVectorTemplateBase< T, bool >::push_back().
Referenced by llvm::SSAUpdaterBulk::RewriteAllUses().