LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Namespaces | Functions
BasicBlockUtils.h File Reference
#include "llvm/IR/BasicBlock.h"
#include "llvm/Support/CFG.h"
Include dependency graph for BasicBlockUtils.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 llvm
 List of target independent CodeGen pass IDs.
 

Functions

void llvm::DeleteDeadBlock (BasicBlock *BB)
 
void llvm::FoldSingleEntryPHINodes (BasicBlock *BB, Pass *P=0)
 
bool llvm::DeleteDeadPHIs (BasicBlock *BB, const TargetLibraryInfo *TLI=0)
 
bool llvm::MergeBlockIntoPredecessor (BasicBlock *BB, Pass *P=0)
 
void llvm::ReplaceInstWithValue (BasicBlock::InstListType &BIL, BasicBlock::iterator &BI, Value *V)
 
void llvm::ReplaceInstWithInst (BasicBlock::InstListType &BIL, BasicBlock::iterator &BI, Instruction *I)
 
void llvm::ReplaceInstWithInst (Instruction *From, Instruction *To)
 
BasicBlockllvm::SplitCriticalEdge (TerminatorInst *TI, unsigned SuccNum, Pass *P=0, bool MergeIdenticalEdges=false, bool DontDeleteUselessPHIs=false, bool SplitLandingPads=false)
 
BasicBlock * llvm::SplitCriticalEdge (BasicBlock *BB, succ_iterator SI, Pass *P=0)
 
bool llvm::SplitCriticalEdge (BasicBlock *Succ, pred_iterator PI, Pass *P=0)
 
BasicBlock * llvm::SplitCriticalEdge (BasicBlock *Src, BasicBlock *Dst, Pass *P=0, bool MergeIdenticalEdges=false, bool DontDeleteUselessPHIs=false)
 
BasicBlockllvm::SplitEdge (BasicBlock *From, BasicBlock *To, Pass *P)
 
BasicBlockllvm::SplitBlock (BasicBlock *Old, Instruction *SplitPt, Pass *P)
 
BasicBlockllvm::SplitBlockPredecessors (BasicBlock *BB, ArrayRef< BasicBlock * > Preds, const char *Suffix, Pass *P=0)
 
void llvm::SplitLandingPadPredecessors (BasicBlock *OrigBB, ArrayRef< BasicBlock * > Preds, const char *Suffix, const char *Suffix2, Pass *P, SmallVectorImpl< BasicBlock * > &NewBBs)
 
ReturnInstllvm::FoldReturnIntoUncondBranch (ReturnInst *RI, BasicBlock *BB, BasicBlock *Pred)
 
TerminatorInstllvm::SplitBlockAndInsertIfThen (Instruction *Cmp, bool Unreachable, MDNode *BranchWeights=0)
 
Valuellvm::GetIfCondition (BasicBlock *BB, BasicBlock *&IfTrue, BasicBlock *&IfFalse)