Home | History | Annotate | Download | only in IR

Lines Matching refs:BasicBlock

1 //===-- BasicBlock.cpp - Implement BasicBlock related methods -------------===//
10 // This file implements the BasicBlock class for the IR library.
14 #include "llvm/IR/BasicBlock.h"
27 ValueSymbolTable *BasicBlock::getValueSymbolTable() {
33 const DataLayout *BasicBlock::getDataLayout() const {
37 LLVMContext &BasicBlock::getContext() const {
43 template class llvm::SymbolTableListTraits<Instruction, BasicBlock>;
46 BasicBlock::BasicBlock(LLVMContext &C, const Twine &Name, Function *NewParent,
47 BasicBlock *InsertBefore)
65 BasicBlock::~BasicBlock() {
84 assert(getParent() == nullptr && "BasicBlock still linked into the program!");
89 void BasicBlock::setParent(Function *parent) {
100 void BasicBlock::removeFromParent() {
104 void BasicBlock::eraseFromParent() {
110 void BasicBlock::moveBefore(BasicBlock *MovePos) {
117 void BasicBlock::moveAfter(BasicBlock *MovePos) {
124 TerminatorInst *BasicBlock::getTerminator() {
129 const TerminatorInst *BasicBlock::getTerminator() const {
134 Instruction* BasicBlock::getFirstNonPHI() {
135 BasicBlock::iterator i = begin();
144 Instruction* BasicBlock::getFirstNonPHIOrDbg() {
145 BasicBlock::iterator i = begin();
154 Instruction* BasicBlock::getFirstNonPHIOrDbgOrLifetime() {
159 BasicBlock::iterator i = begin();
174 BasicBlock::iterator BasicBlock::getFirstInsertionPt() {
180 void BasicBlock::dropAllReferences() {
187 BasicBlock *BasicBlock::getSinglePredecessor() {
190 BasicBlock *ThePred = *PI;
200 BasicBlock *BasicBlock::getUniquePredecessor() {
203 BasicBlock *PredBB = *PI;
214 /// removePredecessor - This method is used to notify a BasicBlock that the
220 void BasicBlock::removePredecessor(BasicBlock *Pred,
245 BasicBlock *Other = APN->getIncomingBlock(APN->getIncomingBlock(0) == Pred);
302 BasicBlock *BasicBlock::splitBasicBlock(iterator I, const Twine &BBName) {
307 BasicBlock *InsertBefore = std::next(Function::iterator(this))
309 BasicBlock *New = BasicBlock::Create(getContext(), BBName,
327 BasicBlock *Successor = *I;
329 for (BasicBlock::iterator II = Successor->begin();
341 void BasicBlock::replaceSuccessorsPhiUsesWith(BasicBlock *New) {
344 // Cope with being called on a BasicBlock that doesn't have a terminator
348 BasicBlock *Succ = TI->getSuccessor(i);
349 // N.B. Succ might not be a complete BasicBlock, so don't assume
364 bool BasicBlock::isLandingPad() const {
370 LandingPadInst *BasicBlock::getLandingPadInst() {
373 const LandingPadInst *BasicBlock::getLandingPadInst() const {