Searched refs:TBB (Results 51 - 74 of 74) sorted by relevance

123

/freebsd-13-stable/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DSelectionDAGBuilder.h543 void FindMergedConditions(const Value *Cond, MachineBasicBlock *TBB,
548 void EmitBranchForMergedCondition(const Value *Cond, MachineBasicBlock *TBB,
H A DSelectionDAGBuilder.cpp2055 MachineBasicBlock *TBB,
2088 TBB, FBB, CurBB, getCurSDLoc(), TProb, FProb);
2097 nullptr, TBB, FBB, CurBB, getCurSDLoc(), TProb, FProb);
2102 MachineBasicBlock *TBB,
2115 FindMergedConditions(NotCond, TBB, FBB, CurBB, SwitchBB, Opc, TProb, FProb,
2143 EmitBranchForMergedCondition(Cond, TBB, FBB, CurBB, SwitchBB,
2157 // jmp_if_X TBB
2160 // jmp_if_Y TBB
2178 FindMergedConditions(BOp->getOperand(0), TBB, TmpBB, CurBB, SwitchBB, Opc,
2185 FindMergedConditions(BOp->getOperand(1), TBB, FB
2054 EmitBranchForMergedCondition(const Value *Cond, MachineBasicBlock *TBB, MachineBasicBlock *FBB, MachineBasicBlock *CurBB, MachineBasicBlock *SwitchBB, BranchProbability TProb, BranchProbability FProb, bool InvertCond) argument
2101 FindMergedConditions(const Value *Cond, MachineBasicBlock *TBB, MachineBasicBlock *FBB, MachineBasicBlock *CurBB, MachineBasicBlock *SwitchBB, Instruction::BinaryOps Opc, BranchProbability TProb, BranchProbability FProb, bool InvertCond) argument
[all...]
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/PowerPC/
H A DPPCInstrInfo.h378 bool analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB,
384 unsigned insertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB,
H A DPPCFastISel.cpp773 MachineBasicBlock *TBB = FuncInfo.MBBMap[BI->getSuccessor(0)]; local
786 if (FuncInfo.MBB->isLayoutSuccessor(TBB)) {
787 std::swap(TBB, FBB);
800 .addMBB(TBB);
801 finishCondBranch(BI->getParent(), TBB, FBB);
807 MachineBasicBlock *Target = (Imm == 0) ? FBB : TBB;
H A DPPCISelDAGToDAG.cpp542 const BasicBlock *TBB = BBTerm->getSuccessor(0); local
545 auto TProb = FuncInfo.BPI->getEdgeProbability(BB, TBB);
568 << " -> " << TBB->getName() << ": " << TProb << "\n"
575 if (BBDN->getBasicBlock()->getBasicBlock() != TBB)
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64FastISel.cpp2314 MachineBasicBlock *TBB = FuncInfo.MBBMap[BI->getSuccessor(0)];
2318 if (FuncInfo.MBB->isLayoutSuccessor(TBB)) {
2319 std::swap(TBB, FBB);
2412 MIB.addMBB(TBB);
2414 finishCondBranch(BI->getParent(), TBB, FBB);
2426 MachineBasicBlock *TBB = FuncInfo.MBBMap[BI->getSuccessor(0)]; local
2440 fastEmitBranch(TBB, DbgLoc);
2449 if (FuncInfo.MBB->isLayoutSuccessor(TBB)) {
2450 std::swap(TBB, FBB);
2480 .addMBB(TBB);
[all...]
H A DAArch64InstrInfo.cpp232 MachineBasicBlock *&TBB,
257 TBB = LastInst->getOperand(0).getMBB();
262 parseCondBranch(LastInst, TBB, Cond);
281 TBB = LastInst->getOperand(0).getMBB();
296 parseCondBranch(SecondLastInst, TBB, Cond);
304 TBB = SecondLastInst->getOperand(0).getMBB();
401 MachineBasicBlock &MBB, const DebugLoc &DL, MachineBasicBlock *TBB,
405 BuildMI(&MBB, DL, get(AArch64::Bcc)).addImm(Cond[0].getImm()).addMBB(TBB);
413 MIB.addMBB(TBB);
418 MachineBasicBlock &MBB, MachineBasicBlock *TBB, MachineBasicBloc
231 analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, MachineBasicBlock *&FBB, SmallVectorImpl<MachineOperand> &Cond, bool AllowModify) const argument
400 instantiateCondBranch( MachineBasicBlock &MBB, const DebugLoc &DL, MachineBasicBlock *TBB, ArrayRef<MachineOperand> Cond) const argument
417 insertBranch( MachineBasicBlock &MBB, MachineBasicBlock *TBB, MachineBasicBlock *FBB, ArrayRef<MachineOperand> Cond, const DebugLoc &DL, int *BytesAdded) const argument
[all...]
/freebsd-13-stable/contrib/llvm-project/llvm/lib/CodeGen/
H A DMachineVerifier.cpp630 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; local
632 if (!TII->analyzeBranch(*const_cast<MachineBasicBlock *>(MBB), TBB, FBB,
636 if (!TBB && !FBB) {
647 } else if (TBB && !FBB && Cond.empty()) {
659 } else if (TBB && !FBB && !Cond.empty()) {
671 } else if (TBB && FBB) {
694 if (TBB && !MBB->isSuccessor(TBB))
706 bool Fallthrough = !TBB || (!Cond.empty() && !FBB);
724 if (SuccMBB == TBB || SuccMB
[all...]
H A DModuloSchedule.cpp257 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; local
259 bool checkBranch = TII->analyzeBranch(*KernelBB, TBB, FBB, Cond);
1875 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; local
1877 bool CanAnalyzeBr = !TII->analyzeBranch(*BB, TBB, FBB, Cond);
1881 TII->insertBranch(*BB, TBB == Exit ? NewBB : TBB, FBB == Exit ? NewBB : FBB,
H A DMachineLICM.cpp865 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; local
867 if (!TII->analyzeBranch(*BB, TBB, FBB, Cond, false) && Cond.empty())
H A DIfConversion.cpp115 /// TargetInstrInfo::analyzeBranch() (i.e. TBB, FBB, and Cond), and its
240 MachineBasicBlock &TBB, MachineBasicBlock &FBB,
741 MachineBasicBlock &TBB, MachineBasicBlock &FBB,
775 if (!TBB.succ_empty() || !FBB.succ_empty()) {
874 /// TBB FBB
1084 // | BB2 // if (c2) goto TBB; else goto FBB;
1087 // TBB |
1093 // Suppose we want to move TBB's contents up into BB1 and BB2 (in BB1 they'd
1095 // TBB contains a convergent instruction. This is safe iff doing so does
1100 // Originally we executed TBB i
735 CountDuplicatedInstructions( MachineBasicBlock::iterator &TIB, MachineBasicBlock::iterator &FIB, MachineBasicBlock::iterator &TIE, MachineBasicBlock::iterator &FIE, unsigned &Dups1, unsigned &Dups2, MachineBasicBlock &TBB, MachineBasicBlock &FBB, bool SkipUnconditionalBranches) const argument
[all...]
H A DCodeGenPrepare.cpp7761 BasicBlock *TBB, *FBB; local
7762 if (!match(BB.getTerminator(), m_Br(m_OneUse(m_BinOp(LogicOp)), TBB, FBB)))
7770 if (TBB == FBB)
7808 auto *Br2 = IRBuilder<>(TmpBB).CreateCondBr(Cond2, TBB, FBB);
7824 std::swap(TBB, FBB);
7827 TBB->replacePhiUsesWith(&BB, TmpBB);
7840 // jmp_if_X TBB
7843 // jmp_if_Y TBB
7877 // jmp_if_Y TBB
H A DMachinePipeliner.cpp340 LI.TBB = nullptr;
343 if (TII->analyzeBranch(*L.getHeader(), LI.TBB, LI.FBB, LI.BrCond)) {
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DSIInstrInfo.h281 MachineBasicBlock *&TBB,
286 bool analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB,
294 unsigned insertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB,
H A DSIInstrInfo.cpp2115 MachineBasicBlock *&TBB,
2121 TBB = I->getOperand(0).getMBB();
2143 TBB = CondBB;
2148 TBB = CondBB;
2156 bool SIInstrInfo::analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, argument
2196 return analyzeBranchImpl(MBB, I, TBB, FBB, Cond, AllowModify);
2204 if (analyzeBranchImpl(MBB, I, TBB, FBB, Cond, AllowModify))
2218 if (TBB != MaskBrDest || Cond.empty())
2258 MachineBasicBlock *TBB,
2265 .addMBB(TBB);
2113 analyzeBranchImpl(MachineBasicBlock &MBB, MachineBasicBlock::iterator I, MachineBasicBlock *&TBB, MachineBasicBlock *&FBB, SmallVectorImpl<MachineOperand> &Cond, bool AllowModify) const argument
2257 insertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB, MachineBasicBlock *FBB, ArrayRef<MachineOperand> Cond, const DebugLoc &DL, int *BytesAdded) const argument
[all...]
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86InstrInfo.cpp2955 // Given a MBB and its TBB, find the FBB which was a fallthrough MBB (it may
2959 MachineBasicBlock *TBB) {
2960 // Look for non-EHPad successors other than TBB. If we find exactly one, it
2961 // is the fallthrough MBB. If we find zero, then TBB is both the target MBB
2966 if ((*SI)->isEHPad() || (*SI == TBB && FallthroughBB))
2969 if (FallthroughBB && FallthroughBB != TBB)
2977 MachineBasicBlock &MBB, MachineBasicBlock *&TBB, MachineBasicBlock *&FBB,
3005 TBB = I->getOperand(0).getMBB();
3018 TBB = nullptr;
3025 // TBB i
2958 getFallThroughMBB(MachineBasicBlock *MBB, MachineBasicBlock *TBB) argument
2976 AnalyzeBranchImpl( MachineBasicBlock &MBB, MachineBasicBlock *&TBB, MachineBasicBlock *&FBB, SmallVectorImpl<MachineOperand> &Cond, SmallVectorImpl<MachineInstr *> &CondBranches, bool AllowModify) const argument
3142 analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, MachineBasicBlock *&FBB, SmallVectorImpl<MachineOperand> &Cond, bool AllowModify) const argument
3243 insertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB, MachineBasicBlock *FBB, ArrayRef<MachineOperand> Cond, const DebugLoc &DL, int *BytesAdded) const argument
[all...]
/freebsd-13-stable/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DTargetInstrInfo.h575 /// just return false, leaving TBB/FBB null.
576 /// 2. If this block ends with only an unconditional branch, it sets TBB to be
579 /// successor block, it sets TBB to be the branch destination block and a
583 /// unconditional branch, it returns the 'true' destination in TBB, the
596 virtual bool analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, argument
667 virtual unsigned insertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB, argument
H A DMachinePipeliner.h79 MachineBasicBlock *TBB = nullptr; member in struct:llvm::MachinePipeliner::LoopInfo
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMBaseInstrInfo.h139 bool analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB,
145 unsigned insertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB,
H A DARMBaseInstrInfo.cpp313 MachineBasicBlock *&TBB,
317 TBB = nullptr;
346 TBB = I->getOperand(0).getMBB();
353 FBB = TBB;
354 TBB = I->getOperand(0).getMBB();
430 MachineBasicBlock *TBB,
444 assert(TBB && "insertBranch must not be told to insert a fallthrough");
453 BuildMI(&MBB, DL, get(BOpc)).addMBB(TBB).add(predOps(ARMCC::AL));
455 BuildMI(&MBB, DL, get(BOpc)).addMBB(TBB);
458 .addMBB(TBB)
312 analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, MachineBasicBlock *&FBB, SmallVectorImpl<MachineOperand> &Cond, bool AllowModify) const argument
429 insertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB, MachineBasicBlock *FBB, ArrayRef<MachineOperand> Cond, const DebugLoc &DL, int *BytesAdded) const argument
2076 isProfitableToIfCvt(MachineBasicBlock &TBB, unsigned TCycles, unsigned TExtra, MachineBasicBlock &FBB, unsigned FCycles, unsigned FExtra, BranchProbability Probability) const argument
[all...]
H A DARMConstantIslandPass.cpp87 "equivalent to the TBB/TBH instructions"));
446 // Optimize jump tables using TBB / TBH.
538 /// Do initial placement of the jump tables. Because Thumb2's TBB and TBH
618 MachineBasicBlock *TBB, *FBB;
620 bool TooDifficult = TII->analyzeBranch(*MBB, TBB, FBB, Cond);
1976 /// While trying to form a TBB/TBH instruction, we may (if the table
2053 // The add wasn't removable, but clobbered the base for the TBB. So we can't
2060 // used in the TBB/TBH if necessary.
2065 /// immediately following JTMI (assumed to be a TBB or TBH terminator). If so,
2193 // It's important that IdxReg is live until the actual TBB/TB
2359 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; local
[all...]
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonHardwareLoops.cpp1464 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; local
1466 if (TII->analyzeBranch(*MI->getParent(), TBB, FBB, Cond, false))
1473 if (TII->predOpcodeHasNot(Cond) ^ (TBB != MBB))
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/WebAssembly/
H A DWebAssemblyFastISel.cpp1270 MachineBasicBlock *TBB = FuncInfo.MBBMap[Br->getSuccessor(0)]; local
1283 .addMBB(TBB)
1286 finishCondBranch(Br->getParent(), TBB, FBB);
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/Mips/
H A DMipsFastISel.cpp946 // TBB is the basic block for the case where the comparison is true.
948 // if (cond) goto TBB
950 // TBB:
952 MachineBasicBlock *TBB = FuncInfo.MBBMap[BI->getSuccessor(0)]; local
979 .addMBB(TBB);
980 finishCondBranch(BI->getParent(), TBB, FBB);

Completed in 699 milliseconds

123