LLVM  6.0.0svn
Functions
BasicBlockUtils.cpp File Reference
#include "llvm/Transforms/Utils/BasicBlockUtils.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Twine.h"
#include "llvm/Analysis/CFG.h"
#include "llvm/Analysis/LoopInfo.h"
#include "llvm/Analysis/MemoryDependenceAnalysis.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/CFG.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DebugInfoMetadata.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/InstrTypes.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/Type.h"
#include "llvm/IR/User.h"
#include "llvm/IR/Value.h"
#include "llvm/IR/ValueHandle.h"
#include "llvm/Support/Casting.h"
#include "llvm/Transforms/Utils/Local.h"
#include <cassert>
#include <cstdint>
#include <string>
#include <utility>
#include <vector>
Include dependency graph for BasicBlockUtils.cpp:

Go to the source code of this file.

Functions

static void UpdateAnalysisInformation (BasicBlock *OldBB, BasicBlock *NewBB, ArrayRef< BasicBlock *> Preds, DominatorTree *DT, LoopInfo *LI, bool PreserveLCSSA, bool &HasLoopExit)
 Update DominatorTree, LoopInfo, and LCCSA analysis information. More...
 
static void UpdatePHINodes (BasicBlock *OrigBB, BasicBlock *NewBB, ArrayRef< BasicBlock *> Preds, BranchInst *BI, bool HasLoopExit)
 Update the PHI nodes in OrigBB to include the values coming from NewBB. More...
 

Function Documentation

◆ UpdateAnalysisInformation()

static void UpdateAnalysisInformation ( BasicBlock OldBB,
BasicBlock NewBB,
ArrayRef< BasicBlock *>  Preds,
DominatorTree DT,
LoopInfo LI,
bool  PreserveLCSSA,
bool HasLoopExit 
)
static

◆ UpdatePHINodes()

static void UpdatePHINodes ( BasicBlock OrigBB,
BasicBlock NewBB,
ArrayRef< BasicBlock *>  Preds,
BranchInst BI,
bool  HasLoopExit 
)
static