| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | IfConversion.cpp | 177 BBInfo &BBI; member 187 : BBI(b), Kind(k), NumDups(d), NumDups2(d2), NeedSubsumption(s), in IfcvtToken() 231 bool reverseBranchCondition(BBInfo &BBI) const; 249 void AnalyzeBranches(BBInfo &BBI); 250 void ScanInstructions(BBInfo &BBI, 260 bool FeasibilityAnalysis(BBInfo &BBI, SmallVectorImpl<MachineOperand> &Pred, 266 bool IfConvertSimple(BBInfo &BBI, IfcvtKind Kind); 267 bool IfConvertTriangle(BBInfo &BBI, IfcvtKind Kind); 268 bool IfConvertDiamondCommon(BBInfo &BBI, BBInfo &TrueBBI, BBInfo &FalseBBI, 272 bool IfConvertDiamond(BBInfo &BBI, IfcvtKind Kind, [all …]
|
| H A D | LiveVariables.cpp | 791 for (const auto &BBI : MBB) { in analyzePHINodes() local 792 if (!BBI.isPHI()) in analyzePHINodes() 794 for (unsigned i = 1, e = BBI.getNumOperands(); i != e; i += 2) in analyzePHINodes() 795 if (BBI.getOperand(i).readsReg()) in analyzePHINodes() 796 PHIVarInfo[BBI.getOperand(i + 1).getMBB()->getNumber()] in analyzePHINodes() 797 .push_back(BBI.getOperand(i).getReg()); in analyzePHINodes() 850 MachineBasicBlock::iterator BBI = SuccBB->begin(), BBE = SuccBB->end(); in addNewBlock() local 851 for (; BBI != BBE && BBI->isPHI(); ++BBI) { in addNewBlock() 853 Defs.insert(BBI->getOperand(0).getReg()); in addNewBlock() 856 for (unsigned i = 1, e = BBI->getNumOperands(); i != e; i += 2) in addNewBlock() [all …]
|
| H A D | PHIElimination.cpp | 747 for (const auto &BBI : MBB) { in analyzePHINodes() local 748 if (!BBI.isPHI()) in analyzePHINodes() 750 for (unsigned i = 1, e = BBI.getNumOperands(); i != e; i += 2) { in analyzePHINodes() 751 if (!BBI.getOperand(i).isUndef()) { in analyzePHINodes() 753 BBI.getOperand(i + 1).getMBB()->getNumber(), in analyzePHINodes() 754 BBI.getOperand(i).getReg())]; in analyzePHINodes() 771 for (MachineBasicBlock::iterator BBI = MBB.begin(), BBE = MBB.end(); in SplitPHIEdges() local 772 BBI != BBE && BBI->isPHI(); ++BBI) { in SplitPHIEdges() 773 for (unsigned i = 1, e = BBI->getNumOperands(); i != e; i += 2) { in SplitPHIEdges() 774 Register Reg = BBI->getOperand(i).getReg(); in SplitPHIEdges() [all …]
|
| H A D | MIRCanonicalizerPass.cpp | 233 for (auto BBI = MBB->instr_begin(); BBI != BBE; ++BBI) { in rescheduleCanonically() local 238 if (&*BBI == Def) { in rescheduleCanonically() 239 DefI = BBI; in rescheduleCanonically() 243 if (&*BBI == UseToBringDefCloserTo) { in rescheduleCanonically() 244 UseI = BBI; in rescheduleCanonically()
|
| H A D | ModuloSchedule.cpp | 221 for (MachineBasicBlock::iterator BBI = BB->instr_begin(), in generateProlog() local 223 BBI != BBE; ++BBI) { in generateProlog() 224 if (Schedule.getStage(&*BBI) == StageNum) { in generateProlog() 225 if (BBI->isPHI()) in generateProlog() 228 cloneAndChangeInstr(&*BBI, i, (unsigned)StageNum); in generateProlog() 232 InstrMap[NewMI] = &*BBI; in generateProlog() 299 for (auto &BBI : *BB) { in generateEpilog() 300 if (BBI.isPHI()) in generateEpilog() 302 MachineInstr *In = &BBI; in generateEpilog() 388 for (MachineBasicBlock::iterator BBI = BB->instr_begin(), in generateExistingPhis() local [all …]
|
| H A D | Analysis.cpp | 558 for (BasicBlock::const_iterator BBI = std::prev(ExitBB->end(), 2);; --BBI) { in isInTailCallPosition() local 559 if (&*BBI == &Call) in isInTailCallPosition() 563 if (BBI->isDebugOrPseudoInst()) in isInTailCallPosition() 567 if (const IntrinsicInst *II = dyn_cast<IntrinsicInst>(BBI)) in isInTailCallPosition() 573 if (BBI->mayHaveSideEffects() || BBI->mayReadFromMemory() || in isInTailCallPosition() 574 !isSafeToSpeculativelyExecute(&*BBI)) in isInTailCallPosition()
|
| H A D | CodeGenCommonISel.cpp | 35 MachineFunction::iterator BBI(ParentMBB); in addSuccessorMBB() local 37 MF->insert(++BBI, SuccMBB); in addSuccessorMBB()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/ |
| H A D | PPCPreEmitPeephole.cpp | 123 for (auto BBI = MBB.instr_begin(); BBI != MBB.instr_end(); ++BBI) { in removeRedundantLIs() local 126 if (InstrsToErase.contains(&*BBI)) in removeRedundantLIs() 129 unsigned Opc = BBI->getOpcode(); in removeRedundantLIs() 135 if (!BBI->getOperand(1).isImm()) in removeRedundantLIs() 137 assert(BBI->getOperand(0).isReg() && in removeRedundantLIs() 140 LLVM_DEBUG(dbgs() << "Scanning after load immediate: "; BBI->dump();); in removeRedundantLIs() 142 Register Reg = BBI->getOperand(0).getReg(); in removeRedundantLIs() 143 int64_t Imm = BBI->getOperand(1).getImm(); in removeRedundantLIs() 145 if (BBI->getOperand(0).isDead()) { in removeRedundantLIs() 146 DeadOrKillToUnset = &BBI->getOperand(0); in removeRedundantLIs() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/ARM/ |
| H A D | ARMBasicBlockInfo.cpp | 46 BasicBlockInfo &BBI = BBInfo[MBB->getNumber()]; in computeBlockSize() local 47 BBI.Size = 0; in computeBlockSize() 48 BBI.Unalign = 0; in computeBlockSize() 49 BBI.PostAlign = Align(1); in computeBlockSize() 52 BBI.Size += TII->getInstSizeInBytes(I); in computeBlockSize() 56 BBI.Unalign = isThumb ? 1 : 2; in computeBlockSize() 59 BBI.Unalign = 1; in computeBlockSize() 64 BBI.PostAlign = Align(4); in computeBlockSize()
|
| H A D | ARMBasicBlockInfo.h | 147 void insert(unsigned BBNum, BasicBlockInfo BBI) { in insert() argument 148 BBInfo.insert(BBInfo.begin() + BBNum, BBI); in insert()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/ |
| H A D | MemCpyOptimizer.h | 66 bool processStore(StoreInst *SI, BasicBlock::iterator &BBI); 68 BasicBlock::iterator &BBI); 69 bool processMemSet(MemSetInst *SI, BasicBlock::iterator &BBI); 70 bool processMemCpy(MemCpyInst *M, BasicBlock::iterator &BBI); 71 bool processMemMove(MemMoveInst *M, BasicBlock::iterator &BBI);
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineLoadStoreAlloca.cpp | 1434 BasicBlock::iterator BBI(SI); in visitStoreInst() local 1435 for (unsigned ScanInsts = 6; BBI != SI.getParent()->begin() && ScanInsts; in visitStoreInst() 1437 --BBI; in visitStoreInst() 1440 if (BBI->isDebugOrPseudoInst()) { in visitStoreInst() 1445 if (StoreInst *PrevSI = dyn_cast<StoreInst>(BBI)) { in visitStoreInst() 1465 if (LoadInst *LI = dyn_cast<LoadInst>(BBI)) { in visitStoreInst() 1477 if (BBI->mayWriteToMemory() || BBI->mayReadFromMemory() || BBI->mayThrow()) in visitStoreInst() 1543 BasicBlock::iterator BBI(OtherBB->getTerminator()); in mergeStoreIntoSuccessor() local 1544 BranchInst *OtherBr = dyn_cast<BranchInst>(BBI); in mergeStoreIntoSuccessor() 1545 if (!OtherBr || BBI == OtherBB->begin()) in mergeStoreIntoSuccessor() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | PlaceSafepoints.cpp | 474 for (BasicBlock::iterator BBI(Start), BBE0 = Start->getParent()->end(), in scanOneBB() local 476 BBI != BBE0 && BBI != BBE1; BBI++) { in scanOneBB() 477 if (CallInst *CI = dyn_cast<CallInst>(&*BBI)) in scanOneBB() 481 assert(!isa<InvokeInst>(&*BBI) && in scanOneBB() 486 if (BBI->isTerminator()) { in scanOneBB() 487 BasicBlock *BB = BBI->getParent(); in scanOneBB()
|
| H A D | TailRecursionElimination.cpp | 488 BasicBlock::iterator BBI(TI); in findTRECandidate() local 490 CI = dyn_cast<CallInst>(BBI); in findTRECandidate() 494 if (BBI == BB->begin()) in findTRECandidate() 496 --BBI; in findTRECandidate() 665 BasicBlock::iterator BBI(CI); in eliminateCall() local 666 for (++BBI; &*BBI != Ret; ++BBI) { in eliminateCall() 667 if (canMoveAboveCall(&*BBI, CI, AA)) in eliminateCall() 674 if (AccPN || !canTransformAccumulatorRecursion(&*BBI, CI)) in eliminateCall() 679 AccRecInstr = &*BBI; in eliminateCall()
|
| H A D | MemCpyOptimizer.cpp | 630 BasicBlock::iterator &BBI) { in processStoreOfLoad() argument 696 BBI = M->getIterator(); in processStoreOfLoad() 733 BBI = SI->getNextNonDebugInstruction()->getIterator(); in processStoreOfLoad() 745 bool MemCpyOptPass::processStore(StoreInst *SI, BasicBlock::iterator &BBI) { in processStore() argument 769 return processStoreOfLoad(SI, LI, DL, BBI); in processStore() 791 BBI = I->getIterator(); // Don't invalidate iterator. in processStore() 823 BBI = M->getIterator(); in processStore() 827 bool MemCpyOptPass::processMemSet(MemSetInst *MSI, BasicBlock::iterator &BBI) { in processMemSet() argument 833 BBI = I->getIterator(); // Don't invalidate iterator. in processMemSet() 1743 bool MemCpyOptPass::processMemCpy(MemCpyInst *M, BasicBlock::iterator &BBI) { in processMemCpy() argument [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | LazyValueInfo.cpp | 369 solveBlockValueBinaryOp(BinaryOperator *BBI, BasicBlock *BB); 383 Instruction *BBI); 541 static ValueLatticeElement getFromRangeMetadata(Instruction *BBI) { in getFromRangeMetadata() argument 542 switch (BBI->getOpcode()) { in getFromRangeMetadata() 547 if (std::optional<ConstantRange> Range = cast<CallBase>(BBI)->getRange()) in getFromRangeMetadata() 551 if (MDNode *Ranges = BBI->getMetadata(LLVMContext::MD_range)) in getFromRangeMetadata() 552 if (isa<IntegerType>(BBI->getType())) { in getFromRangeMetadata() 580 Instruction *BBI = dyn_cast<Instruction>(Val); in solveBlockValueImpl() local 581 if (!BBI || BBI->getParent() != BB) in solveBlockValueImpl() 584 if (PHINode *PN = dyn_cast<PHINode>(BBI)) in solveBlockValueImpl() [all …]
|
| H A D | Loads.cpp | 458 BasicBlock::iterator BBI = ScanFrom->getIterator(), in isSafeToLoadUnconditionally() local 465 while (BBI != E) { in isSafeToLoadUnconditionally() 466 --BBI; in isSafeToLoadUnconditionally() 470 if (isa<CallInst>(BBI) && BBI->mayWriteToMemory() && in isSafeToLoadUnconditionally() 471 !isa<LifetimeIntrinsic>(BBI)) in isSafeToLoadUnconditionally() 477 if (LoadInst *LI = dyn_cast<LoadInst>(BBI)) { in isSafeToLoadUnconditionally() 486 } else if (StoreInst *SI = dyn_cast<StoreInst>(BBI)) { in isSafeToLoadUnconditionally()
|
| H A D | LoopPass.cpp | 51 auto BBI = llvm::find_if(L->blocks(), [](BasicBlock *BB) { return BB; }); in runOnLoop() local 52 if (BBI != L->blocks().end() && in runOnLoop() 53 isFunctionInPrintList((*BBI)->getParent()->getName())) { in runOnLoop()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/ObjCARC/ |
| H A D | ObjCARCContract.cpp | 452 BasicBlock::iterator BBI = Inst->getIterator(); in tryToPeepholeInstruction() local 459 if (BBI == InstParent->begin()) { in tryToPeepholeInstruction() 463 BBI = Pred->getTerminator()->getIterator(); in tryToPeepholeInstruction() 466 --BBI; in tryToPeepholeInstruction() 467 } while (IsNoopInstruction(&*BBI)); in tryToPeepholeInstruction() 469 if (GetRCIdentityRoot(&*BBI) == GetArgRCIdentityRoot(Inst)) { in tryToPeepholeInstruction()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/DirectX/ |
| H A D | DXILForwardHandleAccesses.cpp | 96 BasicBlock::iterator BBI(NestedLI); in forwardHandleAccesses() local 98 NestedLI, NestedLI->getParent(), BBI, 0, nullptr, nullptr); in forwardHandleAccesses()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/CSKY/ |
| H A D | CSKYConstantIslandPass.cpp | 274 const BasicBlockInfo &BBI = BBInfo[J]; in dumpBBs() local 275 dbgs() << format("%08x %bb.%u\t", BBI.Offset, J) in dumpBBs() 578 BasicBlockInfo &BBI = BBInfo[MBB->getNumber()]; in computeBlockSize() local 579 BBI.Size = 0; in computeBlockSize() 582 BBI.Size += TII->getInstSizeInBytes(MI); in computeBlockSize() 777 const BasicBlockInfo &BBI = BBInfo[Block]; in isCPEntryInRange() 782 << format("%#x-%x\t", BBI.Offset, BBI.postOffset()) << *MI in isCPEntryInRange()
|
| /freebsd/contrib/llvm-project/llvm/lib/IR/ |
| H A D | SafepointIRVerifier.cpp | 559 for (auto &BBI : BlockMap) { in GCPtrTracker() local 560 gatherDominatingDefs(BBI.first, BBI.second->AvailableIn, DT); in GCPtrTracker() 561 transferBlock(BBI.first, *BBI.second, true); in GCPtrTracker()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | LoopSimplify.cpp | 84 Function::iterator BBI = --NewBB->getIterator(); in placeSplitBlockCarefully() local 85 if (llvm::is_contained(SplitPreds, &*BBI)) in placeSplitBlockCarefully() 96 Function::iterator BBI = Pred->getIterator(); in placeSplitBlockCarefully() local 97 if (++BBI != NewBB->getParent()->end() && L->contains(&*BBI)) { in placeSplitBlockCarefully()
|
| H A D | SimplifyCFG.cpp | 3538 for (BasicBlock::iterator BBI = BB->begin(); &*BBI != BI; ++BBI) { in foldCondBranchOnValueKnownInPredecessorImpl() local 3539 if (PHINode *PN = dyn_cast<PHINode>(BBI)) { in foldCondBranchOnValueKnownInPredecessorImpl() 3544 Instruction *N = BBI->clone(); in foldCondBranchOnValueKnownInPredecessorImpl() 3548 if (BBI->hasName()) in foldCondBranchOnValueKnownInPredecessorImpl() 3549 N->setName(BBI->getName() + ".c"); in foldCondBranchOnValueKnownInPredecessorImpl() 3553 if (const DebugLoc &DL = BBI->getDebugLoc()) in foldCondBranchOnValueKnownInPredecessorImpl() 3560 if (!BBI->use_empty()) in foldCondBranchOnValueKnownInPredecessorImpl() 3561 TranslateMap[&*BBI] = V; in foldCondBranchOnValueKnownInPredecessorImpl() 3568 if (!BBI->use_empty()) in foldCondBranchOnValueKnownInPredecessorImpl() 3569 TranslateMap[&*BBI] = N; in foldCondBranchOnValueKnownInPredecessorImpl() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/Mips/ |
| H A D | MipsConstantIslandPass.cpp | 425 const BasicBlockInfo &BBI = BBInfo[J]; in dumpBBs() local 426 dbgs() << format("%08x %bb.%u\t", BBI.Offset, J) in dumpBBs() 783 BasicBlockInfo &BBI = BBInfo[MBB->getNumber()]; in computeBlockSize() local 784 BBI.Size = 0; in computeBlockSize() 787 BBI.Size += TII->getInstSizeInBytes(MI); in computeBlockSize() 975 const BasicBlockInfo &BBI = BBInfo[Block]; in isCPEntryInRange() 980 << format("%#x-%x\t", BBI.Offset, BBI.postOffset()) << *MI in isCPEntryInRange()
|