/freebsd/contrib/llvm-project/llvm/lib/Target/AVR/ |
H A D | AVRShiftExpand.cpp | 89 BasicBlock *LoopBB = BasicBlock::Create(Ctx, "shift.loop", F, EndBB); in expand() local 99 Builder.CreateCondBr(Cmp1, EndBB, LoopBB); in expand() 103 Builder.SetInsertPoint(LoopBB); in expand() 113 ShiftAmountPHI->addIncoming(ShiftAmountSub, LoopBB); in expand() 132 ValuePHI->addIncoming(ValueShifted, LoopBB); in expand() 137 Builder.CreateCondBr(Cmp2, EndBB, LoopBB); in expand() 144 Result->addIncoming(ValueShifted, LoopBB); in expand()
|
H A D | AVRISelLowering.cpp | 1825 MachineBasicBlock *LoopBB = F->CreateMachineBasicBlock(LLVM_BB); in insertShift() local 1829 F->insert(I, LoopBB); in insertShift() 1841 LoopBB->addSuccessor(CheckBB); in insertShift() 1842 CheckBB->addSuccessor(LoopBB); in insertShift() 1859 auto ShiftMI = BuildMI(LoopBB, dl, TII.get(Opc), ShiftReg2).addReg(ShiftReg); in insertShift() 1873 .addMBB(LoopBB); in insertShift() 1878 .addMBB(LoopBB); in insertShift() 1883 .addMBB(LoopBB); in insertShift() 1886 BuildMI(CheckBB, dl, TII.get(AVR::BRPLk)).addMBB(LoopBB); in insertShift()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | LowerMemIntrinsics.cpp | 62 BasicBlock *LoopBB = in createMemCpyLoopKnownSize() local 64 PreLoopBB->getTerminator()->setSuccessor(0, LoopBB); in createMemCpyLoopKnownSize() 71 IRBuilder<> LoopBuilder(LoopBB); in createMemCpyLoopKnownSize() 98 LoopIndex->addIncoming(NewIndex, LoopBB); in createMemCpyLoopKnownSize() 103 LoopBB, PostLoopBB); in createMemCpyLoopKnownSize() 223 BasicBlock *LoopBB = in createMemCpyLoopUnknownSize() local 225 IRBuilder<> LoopBuilder(LoopBB); in createMemCpyLoopUnknownSize() 253 LoopIndex->addIncoming(NewIndex, LoopBB); in createMemCpyLoopUnknownSize() 287 LoopBB, ResHeaderBB); in createMemCpyLoopUnknownSize() 291 LoopBuilder.CreateICmpULT(NewIndex, RuntimeLoopCount), LoopBB, in createMemCpyLoopUnknownSize() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
H A D | AMDGPUCtorDtorLowering.cpp | 77 auto *LoopBB = BasicBlock::Create(C, "while.entry", &F); in createInitOrFiniCalls() 128 LoopBB, ExitBB); in createInitOrFiniKernel() 129 IRB.SetInsertPoint(LoopBB); in createInitOrFiniKernel() 139 CallBackPHI->addIncoming(NewCallBack, LoopBB); 140 IRB.CreateCondBr(EndCmp, ExitBB, LoopBB); 68 auto *LoopBB = BasicBlock::Create(C, "while.entry", &F); createInitOrFiniCalls() local
|
H A D | SIISelLowering.cpp | 4364 MachineBasicBlock *LoopBB = MF->CreateMachineBasicBlock(); in splitBlockForLoop() local 4369 MF->insert(MBBI, LoopBB); in splitBlockForLoop() 4372 LoopBB->addSuccessor(LoopBB); in splitBlockForLoop() 4373 LoopBB->addSuccessor(RemainderBB); in splitBlockForLoop() 4382 LoopBB->splice(LoopBB->begin(), &MBB, I, Next); in splitBlockForLoop() 4390 MBB.addSuccessor(LoopBB); in splitBlockForLoop() 4392 return std::pair(LoopBB, RemainderBB); in splitBlockForLoop() 4416 MachineBasicBlock *LoopBB; in emitGWSMemViolTestLoop() local 4424 std::tie(LoopBB, RemainderBB) = splitBlockForLoop(MI, *BB, true); in emitGWSMemViolTestLoop() 4426 MachineBasicBlock::iterator I = LoopBB->end(); in emitGWSMemViolTestLoop() [all …]
|
H A D | AMDGPURegisterBankInfo.cpp | 815 MachineBasicBlock *LoopBB = MF->CreateMachineBasicBlock(); in executeInWaterfallLoop() local 821 MF->insert(MBBI, LoopBB); in executeInWaterfallLoop() 826 LoopBB->addSuccessor(BodyBB); in executeInWaterfallLoop() 828 BodyBB->addSuccessor(LoopBB); in executeInWaterfallLoop() 834 MBB.addSuccessor(LoopBB); in executeInWaterfallLoop() 837 B.setInsertPt(*LoopBB, LoopBB->end()); in executeInWaterfallLoop() 858 B.setMBB(*LoopBB); in executeInWaterfallLoop() 888 B.setMBB(*LoopBB); in executeInWaterfallLoop() 962 B.buildInstr(AMDGPU::SI_WATERFALL_LOOP).addMBB(LoopBB); in executeInWaterfallLoop() 2901 MachineBasicBlock *LoopBB = Extract1->getParent(); in applyMappingImpl() local [all …]
|
H A D | SIInstrInfo.cpp | 6264 MachineBasicBlock &LoopBB, MachineBasicBlock &BodyBB, const DebugLoc &DL, in emitLoadScalarOpsFromVGPRLoop() argument 6278 MachineBasicBlock::iterator I = LoopBB.begin(); in emitLoadScalarOpsFromVGPRLoop() 6291 BuildMI(LoopBB, I, DL, TII.get(AMDGPU::V_READFIRSTLANE_B32), CurReg) in emitLoadScalarOpsFromVGPRLoop() 6296 BuildMI(LoopBB, I, DL, TII.get(AMDGPU::V_CMP_EQ_U32_e64), NewCondReg) in emitLoadScalarOpsFromVGPRLoop() 6305 BuildMI(LoopBB, I, DL, TII.get(AndOpc), AndReg) in emitLoadScalarOpsFromVGPRLoop() 6324 BuildMI(LoopBB, I, DL, TII.get(AMDGPU::V_READFIRSTLANE_B32), CurRegLo) in emitLoadScalarOpsFromVGPRLoop() 6328 BuildMI(LoopBB, I, DL, TII.get(AMDGPU::V_READFIRSTLANE_B32), CurRegHi) in emitLoadScalarOpsFromVGPRLoop() 6337 BuildMI(LoopBB, I, DL, TII.get(AMDGPU::REG_SEQUENCE), CurReg) in emitLoadScalarOpsFromVGPRLoop() 6344 auto Cmp = BuildMI(LoopBB, I, DL, TII.get(AMDGPU::V_CMP_EQ_U64_e64), in emitLoadScalarOpsFromVGPRLoop() 6358 BuildMI(LoopBB, I, DL, TII.get(AndOpc), AndReg) in emitLoadScalarOpsFromVGPRLoop() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
H A D | BranchProbabilityInfo.cpp | 695 LoopBlock &LoopBB, uint32_t BBWeight, in updateEstimatedBlockWeight() argument 698 BasicBlock *BB = LoopBB.getBlock(); in updateEstimatedBlockWeight() 711 if (isLoopExitingEdge({PredLoop, LoopBB})) { in updateEstimatedBlockWeight() 733 const LoopBlock &LoopBB, DominatorTree *DT, PostDominatorTree *PDT, in propagateEstimatedBlockWeight() argument 736 const BasicBlock *BB = LoopBB.getBlock(); in propagateEstimatedBlockWeight() 751 const LoopEdge Edge{DomLoopBB, LoopBB}; in propagateEstimatedBlockWeight() 828 const LoopBlock LoopBB = LoopWorkList.pop_back_val(); in computeEestimateBlockWeight() local 829 const LoopData LD = LoopBB.getLoopData(); in computeEestimateBlockWeight() 836 getLoopExitBlocks(LoopBB, Exits); in computeEestimateBlockWeight() 838 LoopBB, make_range(Exits.begin(), Exits.end())); in computeEestimateBlockWeight() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/NVPTX/ |
H A D | NVPTXCtorDtorLowering.cpp | 133 auto *LoopBB = BasicBlock::Create(C, "while.entry", &F); in createInitOrFiniCalls() local 190 LoopBB, ExitBB); in createInitOrFiniCalls() 191 IRB.SetInsertPoint(LoopBB); in createInitOrFiniCalls() 201 CallBackPHI->addIncoming(NewCallBack, LoopBB); in createInitOrFiniCalls() 202 IRB.CreateCondBr(EndCmp, ExitBB, LoopBB); in createInitOrFiniCalls()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/MSP430/ |
H A D | MSP430ISelLowering.cpp | 1474 MachineBasicBlock *LoopBB = F->CreateMachineBasicBlock(LLVM_BB); in EmitShiftInstr() local 1477 F->insert(I, LoopBB); in EmitShiftInstr() 1487 BB->addSuccessor(LoopBB); in EmitShiftInstr() 1489 LoopBB->addSuccessor(RemBB); in EmitShiftInstr() 1490 LoopBB->addSuccessor(LoopBB); in EmitShiftInstr() 1514 BuildMI(LoopBB, dl, TII.get(MSP430::PHI), ShiftReg) in EmitShiftInstr() 1516 .addReg(ShiftReg2).addMBB(LoopBB); in EmitShiftInstr() 1517 BuildMI(LoopBB, dl, TII.get(MSP430::PHI), ShiftAmtReg) in EmitShiftInstr() 1519 .addReg(ShiftAmtReg2).addMBB(LoopBB); in EmitShiftInstr() 1521 BuildMI(LoopBB, dl, TII.get(MSP430::BIC16rc), MSP430::SR) in EmitShiftInstr() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
H A D | AArch64ExpandPseudoInsts.cpp | 713 auto LoopBB = MF->CreateMachineBasicBlock(MBB.getBasicBlock()); in expandSetTagLoop() local 716 MF->insert(++MBB.getIterator(), LoopBB); in expandSetTagLoop() 717 MF->insert(++LoopBB->getIterator(), DoneBB); in expandSetTagLoop() 719 BuildMI(LoopBB, DL, TII->get(OpCode2)) in expandSetTagLoop() 726 BuildMI(LoopBB, DL, TII->get(AArch64::SUBSXri)) in expandSetTagLoop() 731 BuildMI(LoopBB, DL, TII->get(AArch64::Bcc)) in expandSetTagLoop() 733 .addMBB(LoopBB) in expandSetTagLoop() 736 LoopBB->addSuccessor(LoopBB); in expandSetTagLoop() 737 LoopBB->addSuccessor(DoneBB); in expandSetTagLoop() 742 MBB.addSuccessor(LoopBB); in expandSetTagLoop() [all …]
|
H A D | AArch64InstrInfo.cpp | 9631 MachineBasicBlock *LoopBB; member in __anon56a76da32311::AArch64PipelinerLoopInfo 9651 AArch64PipelinerLoopInfo(MachineBasicBlock *LoopBB, MachineInstr *CondBranch, in AArch64PipelinerLoopInfo() argument 9659 LoopBB(LoopBB), CondBranch(CondBranch), Comp(Comp), in AArch64PipelinerLoopInfo() 9741 if (CondBranch->getOperand(1).getMBB() == LoopBB) in createRemainingIterationsGreaterCondition() 9846 static bool getIndVarInfo(Register Reg, const MachineBasicBlock *LoopBB, in getIndVarInfo() argument 9861 if (LoopBB->pred_size() != 2) in getIndVarInfo() 9865 const MachineRegisterInfo &MRI = LoopBB->getParent()->getRegInfo(); in getIndVarInfo() 9873 if (Def->getParent() != LoopBB) in getIndVarInfo() 9885 extractPhiReg(*Def, LoopBB, CurReg, InitReg); in getIndVarInfo() 9910 if (isDefinedOutside(Def->getOperand(2).getReg(), LoopBB)) in getIndVarInfo() [all …]
|
H A D | AArch64InstrInfo.h | 395 analyzeLoopForPipelining(MachineBasicBlock *LoopBB) const override;
|
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
H A D | AtomicExpandPass.cpp | 1057 auto LoopBB = BasicBlock::Create(Ctx, "partword.cmpxchg.loop", F, FailureBB); in expandPartwordCmpXchg() local 1079 Builder.CreateBr(LoopBB); in expandPartwordCmpXchg() 1082 Builder.SetInsertPoint(LoopBB); in expandPartwordCmpXchg() 1115 Builder.CreateCondBr(ShouldContinue, LoopBB, EndBB); in expandPartwordCmpXchg() 1225 BasicBlock *LoopBB = BasicBlock::Create(Ctx, "atomicrmw.start", F, ExitBB); in insertRMWLLSCLoop() local 1231 Builder.CreateBr(LoopBB); in insertRMWLLSCLoop() 1234 Builder.SetInsertPoint(LoopBB); in insertRMWLLSCLoop() 1243 Builder.CreateCondBr(TryAgain, LoopBB, ExitBB); in insertRMWLLSCLoop() 1588 BasicBlock *LoopBB = BasicBlock::Create(Ctx, "atomicrmw.start", F, ExitBB); in insertRMWCmpXchgLoop() local 1596 Builder.CreateBr(LoopBB); in insertRMWCmpXchgLoop() [all …]
|
H A D | MachineBlockPlacement.cpp | 2617 for (MachineBasicBlock *LoopBB : L.getBlocks()) { in collectLoopBlockSet() 2618 if (LoopBlockSet.count(LoopBB)) in collectLoopBlockSet() 2620 auto Freq = MBFI->getBlockFreq(LoopBB).getFrequency(); in collectLoopBlockSet() 2623 BlockChain *Chain = BlockToChain[LoopBB]; in collectLoopBlockSet() 2685 for (const MachineBasicBlock *LoopBB : LoopBlockSet) in buildLoopChains() local 2686 fillWorkLists(LoopBB, UpdatedPreds, &LoopBlockSet); in buildLoopChains() 2719 for (const MachineBasicBlock *LoopBB : LoopBlockSet) in buildLoopChains() 2723 << " Bad block: " << getBlockName(LoopBB) << "\n"; in buildLoopChains()
|
H A D | ModuloSchedule.cpp | 56 static unsigned getInitPhiReg(MachineInstr &Phi, MachineBasicBlock *LoopBB) { in getInitPhiReg() argument 58 if (Phi.getOperand(i + 1).getMBB() != LoopBB) in getInitPhiReg() 64 static unsigned getLoopPhiReg(MachineInstr &Phi, MachineBasicBlock *LoopBB) { in getLoopPhiReg() argument 66 if (Phi.getOperand(i + 1).getMBB() == LoopBB) in getLoopPhiReg() 1291 KernelRewriter(MachineLoop &L, ModuloSchedule &S, MachineBasicBlock *LoopBB, 1298 MachineBasicBlock *LoopBB, LiveIntervals *LIS) in KernelRewriter() argument 1299 : S(S), BB(LoopBB), PreheaderBB(L.getLoopPreheader()), in KernelRewriter()
|
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/ |
H A D | BranchProbabilityInfo.h | 397 bool updateEstimatedBlockWeight(LoopBlock &LoopBB, uint32_t BBWeight, 403 void propagateEstimatedBlockWeight(const LoopBlock &LoopBB, DominatorTree *DT,
|
/freebsd/contrib/llvm-project/clang/lib/CodeGen/ |
H A D | CGNonTrivialStruct.cpp | 384 llvm::BasicBlock *LoopBB = CGF.createBasicBlock("loop.body"); in visitArray() local 390 CGF.Builder.CreateCondBr(Done, ExitBB, LoopBB); in visitArray() 393 CGF.EmitBlock(LoopBB); in visitArray() 407 LoopBB = CGF.Builder.GetInsertBlock(); in visitArray() 413 PHIs[I]->addIncoming(NewAddrs[I].emitRawPointer(CGF), LoopBB); in visitArray()
|
H A D | CGExprCXX.cpp | 1255 llvm::BasicBlock *LoopBB = createBasicBlock("new.loop"); in EmitNewArrayInitializer() local 1268 Builder.CreateCondBr(IsEmpty, ContBB, LoopBB); in EmitNewArrayInitializer() 1272 EmitBlock(LoopBB); in EmitNewArrayInitializer() 1310 Builder.CreateCondBr(IsEnd, ContBB, LoopBB); in EmitNewArrayInitializer()
|
H A D | CGDecl.cpp | 1846 llvm::BasicBlock *LoopBB = createBasicBlock("vla-init.loop"); in emitZeroOrPatternForAutoVarInit() local 1862 EmitBlock(LoopBB); in emitZeroOrPatternForAutoVarInit() 1875 Builder.CreateCondBr(Done, ContBB, LoopBB); in emitZeroOrPatternForAutoVarInit() 1876 Cur->addIncoming(Next, LoopBB); in emitZeroOrPatternForAutoVarInit()
|
H A D | CGOpenMPRuntimeGPU.cpp | 1321 llvm::BasicBlock *LoopBB = CGF.createBasicBlock("omp.critical.loop"); in emitCriticalRegion() local 1347 CGF.EmitBlock(LoopBB); in emitCriticalRegion() 1380 CGF.EmitBranch(LoopBB); in emitCriticalRegion()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
H A D | SimpleLoopUnswitch.cpp | 1204 for (auto *LoopBB : L.blocks()) in buildClonedLoopBlocks() local 1205 if (!SkipBlock(LoopBB)) in buildClonedLoopBlocks() 1206 CloneBlock(LoopBB); in buildClonedLoopBlocks() 1285 for (auto *LoopBB : L.blocks()) in buildClonedLoopBlocks() local 1286 if (SkipBlock(LoopBB)) in buildClonedLoopBlocks() 1287 for (auto *SuccBB : successors(LoopBB)) in buildClonedLoopBlocks() 1290 PN.removeIncomingValue(LoopBB, /*DeletePHIIfEmpty*/ false); in buildClonedLoopBlocks()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/ |
H A D | HexagonInstrInfo.h | 135 analyzeLoopForPipelining(MachineBasicBlock *LoopBB) const override;
|
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/ |
H A D | ARMBaseInstrInfo.cpp | 6976 ARMBaseInstrInfo::analyzeLoopForPipelining(MachineBasicBlock *LoopBB) const { in analyzeLoopForPipelining() 6977 MachineBasicBlock::iterator I = LoopBB->getFirstTerminator(); in analyzeLoopForPipelining() 6978 MachineBasicBlock *Preheader = *LoopBB->pred_begin(); in analyzeLoopForPipelining() 6979 if (Preheader == LoopBB) in analyzeLoopForPipelining() 6980 Preheader = *std::next(LoopBB->pred_begin()); in analyzeLoopForPipelining() 6982 if (I != LoopBB->end() && I->getOpcode() == ARM::t2Bcc) { in analyzeLoopForPipelining() 6988 for (auto &L : LoopBB->instrs()) { in analyzeLoopForPipelining() 7009 if (I != LoopBB->end() && I->getOpcode() == ARM::t2LoopEnd) { in analyzeLoopForPipelining() 7010 for (auto &L : LoopBB->instrs()) in analyzeLoopForPipelining() 7016 MachineRegisterInfo &MRI = LoopBB->getParent()->getRegInfo(); in analyzeLoopForPipelining()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/ |
H A D | PPCInstrInfo.h | 675 analyzeLoopForPipelining(MachineBasicBlock *LoopBB) const override;
|