Home
last modified time | relevance | path

Searched refs:TBB (Results 1 – 25 of 97) sorted by relevance

1234

/freebsd/contrib/llvm-project/llvm/lib/Target/NVPTX/
H A DNVPTXInstrInfo.cpp83 MachineBasicBlock *&TBB, in analyzeBranch() argument
98 TBB = LastInst.getOperand(0).getMBB(); in analyzeBranch()
102 TBB = LastInst.getOperand(1).getMBB(); in analyzeBranch()
120 TBB = SecondLastInst.getOperand(1).getMBB(); in analyzeBranch()
130 TBB = SecondLastInst.getOperand(0).getMBB(); in analyzeBranch()
168 MachineBasicBlock *TBB, in insertBranch() argument
176 assert(TBB && "insertBranch must not be told to insert a fallthrough"); in insertBranch()
183 BuildMI(&MBB, DL, get(NVPTX::GOTO)).addMBB(TBB); in insertBranch()
185 BuildMI(&MBB, DL, get(NVPTX::CBranch)).add(Cond[0]).addMBB(TBB); in insertBranch()
190 BuildMI(&MBB, DL, get(NVPTX::CBranch)).add(Cond[0]).addMBB(TBB); in insertBranch()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DEarlyIfConversion.cpp98 MachineBasicBlock *TBB; member in __anon4c5015260111::SSAIfConv
105 bool isTriangle() const { return TBB == Tail || FBB == Tail; } in isTriangle()
108 MachineBasicBlock *getTPred() const { return TBB == Tail ? Head : TBB; } in getTPred()
170 void clearRepeatedKillFlagsFromTBB(MachineBasicBlock *TBB,
447 TBB = FBB = Tail = nullptr; in canConvertIf()
495 if (TII->analyzeBranch(*Head, TBB, FBB, Cond)) { in canConvertIf()
501 if (!TBB) { in canConvertIf()
515 FBB = TBB == Succ0 ? Succ1 : Succ0; in canConvertIf()
548 if (TBB != Tail && !canPredicateInstrs(TBB)) in canConvertIf()
553 if (TBB != Tail && !canSpeculateInstrs(TBB)) in canConvertIf()
[all …]
H A DBranchRelaxation.cpp377 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; in fixupConditionalBranch() local
388 auto insertBranch = [&](MachineBasicBlock *MBB, MachineBasicBlock *TBB, in fixupConditionalBranch()
393 TII->insertBranch(*MBB, TBB, FBB, Cond, DL, &NewBrSize); in fixupConditionalBranch()
418 bool Fail = TII->analyzeBranch(*MBB, TBB, FBB, Cond); in fixupConditionalBranch()
432 if (MBB->getSectionID() != TBB->getSectionID() && in fixupConditionalBranch()
433 TBB->getSectionID() == MBBSectionID::ColdSectionID && in fixupConditionalBranch()
443 insertUncondBranch(NewBB, TBB); in fixupConditionalBranch()
446 MBB->replaceSuccessor(TBB, NewBB); in fixupConditionalBranch()
447 NewBB->addSuccessor(TBB); in fixupConditionalBranch()
460 << printMBBReference(*MBB) << " to " << printMBBReference(*TBB) in fixupConditionalBranch()
[all …]
H A DMachineLoopUtils.cpp122 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; in PeelSingleBlockLoop() local
124 bool CanAnalyzeBr = !TII->analyzeBranch(*Loop, TBB, FBB, Cond); in PeelSingleBlockLoop()
128 TII->insertBranch(*Loop, TBB == Exit ? NewBB : TBB, in PeelSingleBlockLoop()
H A DBranchFolding.cpp490 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; in FixTail() local
495 if (I != MF->end() && !TII->analyzeBranch(*CurMBB, TBB, FBB, Cond, true)) { in FixTail()
497 if (TBB == NextBB && !Cond.empty() && !FBB) { in FixTail()
1139 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; in TailMergeBlocks() local
1141 if (!TII->analyzeBranch(*PBB, TBB, FBB, Cond, true)) { in TailMergeBlocks()
1145 if (!Cond.empty() && TBB == IBB) { in TailMergeBlocks()
1158 if (TBB && (Cond.empty() || FBB)) { in TailMergeBlocks()
1162 TII->insertBranch(*PBB, (TBB == IBB) ? FBB : TBB, nullptr, in TailMergeBlocks()
1944 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; in HoistCommonCodeInSuccs() local
1946 if (TII->analyzeBranch(*MBB, TBB, FBB, Cond, true) || !TBB || Cond.empty()) in HoistCommonCodeInSuccs()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/WebAssembly/
H A DWebAssemblyInstrInfo.cpp92 MachineBasicBlock *&TBB, in analyzeBranch() argument
114 TBB = MI.getOperand(0).getMBB(); in analyzeBranch()
122 TBB = MI.getOperand(0).getMBB(); in analyzeBranch()
127 TBB = MI.getOperand(0).getMBB(); in analyzeBranch()
162 MachineBasicBlock &MBB, MachineBasicBlock *TBB, MachineBasicBlock *FBB, in insertBranch() argument
167 if (!TBB) in insertBranch()
170 BuildMI(&MBB, DL, get(WebAssembly::BR)).addMBB(TBB); in insertBranch()
177 BuildMI(&MBB, DL, get(WebAssembly::BR_IF)).addMBB(TBB).add(Cond[1]); in insertBranch()
179 BuildMI(&MBB, DL, get(WebAssembly::BR_UNLESS)).addMBB(TBB).add(Cond[1]); in insertBranch()
H A DWebAssemblyFixBrTableDefaults.cpp101 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; in fixBrTableDefault() local
104 bool Analyzed = !TII.analyzeBranch(*HeaderMBB, TBB, FBB, Cond); in fixBrTableDefault()
116 if (TBB && TBB != MBB) { in fixBrTableDefault()
135 MI.addOperand(MF, MachineOperand::CreateMBB(TBB)); in fixBrTableDefault()
/freebsd/contrib/llvm-project/llvm/lib/Target/MSP430/
H A DMSP430InstrInfo.cpp160 MachineBasicBlock *&TBB, in analyzeBranch() argument
190 TBB = I->getOperand(0).getMBB(); in analyzeBranch()
201 TBB = nullptr; in analyzeBranch()
208 TBB = I->getOperand(0).getMBB(); in analyzeBranch()
221 FBB = TBB; in analyzeBranch()
222 TBB = I->getOperand(0).getMBB(); in analyzeBranch()
230 assert(TBB); in analyzeBranch()
234 if (TBB != I->getOperand(0).getMBB()) in analyzeBranch()
249 MachineBasicBlock *TBB, in insertBranch() argument
255 assert(TBB && "insertBranch must not be told to insert a fallthrough"); in insertBranch()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVRedundantCopyElimination.cpp72 MachineBasicBlock *TBB) { in guaranteesZeroRegInBlock() argument
74 assert(TBB != nullptr && "Expected branch target basic block"); in guaranteesZeroRegInBlock()
77 TBB == &MBB) in guaranteesZeroRegInBlock()
80 TBB != &MBB) in guaranteesZeroRegInBlock()
96 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; in optimizeBlock() local
98 if (TII->analyzeBranch(*PredMBB, TBB, FBB, Cond, /*AllowModify*/ false) || in optimizeBlock()
103 if (!guaranteesZeroRegInBlock(MBB, Cond, TBB)) in optimizeBlock()
H A DRISCVLateBranchOpt.cpp49 MachineBasicBlock *TBB, *FBB; in runOnBasicBlock() local
51 if (RII->analyzeBranch(MBB, TBB, FBB, Cond, /*AllowModify=*/false)) in runOnBasicBlock()
54 if (!TBB || Cond.size() != 3) in runOnBasicBlock()
70 RISCVInstrInfo::evaluateCondBranch(CC, C0, C1) ? TBB : FBB; in runOnBasicBlock()
/freebsd/contrib/llvm-project/llvm/lib/Target/XCore/
H A DXCoreInstrInfo.cpp186 MachineBasicBlock *&TBB, in analyzeBranch() argument
204 TBB = LastInst->getOperand(0).getMBB(); in analyzeBranch()
215 TBB = LastInst->getOperand(1).getMBB(); in analyzeBranch()
236 TBB = SecondLastInst->getOperand(1).getMBB(); in analyzeBranch()
248 TBB = SecondLastInst->getOperand(0).getMBB(); in analyzeBranch()
268 MachineBasicBlock *TBB, in insertBranch() argument
274 assert(TBB && "insertBranch must not be told to insert a fallthrough"); in insertBranch()
282 BuildMI(&MBB, DL, get(XCore::BRFU_lu6)).addMBB(TBB); in insertBranch()
287 .addMBB(TBB); in insertBranch()
296 .addMBB(TBB); in insertBranch()
/freebsd/contrib/llvm-project/llvm/lib/Target/Xtensa/
H A DXtensaInstrInfo.cpp351 MachineBasicBlock *&TBB, in analyzeBranch() argument
385 TBB = ThisTarget->getMBB(); in analyzeBranch()
397 TBB = ThisTarget->getMBB(); in analyzeBranch()
404 FBB = TBB; in analyzeBranch()
405 TBB = ThisTarget->getMBB(); in analyzeBranch()
417 assert(TBB); in analyzeBranch()
421 if (TBB != ThisTarget->getMBB()) in analyzeBranch()
461 MachineBasicBlock &MBB, MachineBasicBlock *TBB, MachineBasicBlock *FBB, in insertBranch() argument
470 Count = insertBranchAtInst(MBB, MBB.end(), TBB, Cond, DL, BytesAdded); in insertBranch()
478 Count += insertBranchAtInst(MBB, MBB.end(), TBB, Cond, DL, BytesAdded); in insertBranch()
[all …]
H A DXtensaInstrInfo.h86 bool analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB,
94 unsigned insertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB,
106 MachineBasicBlock *TBB,
/freebsd/contrib/llvm-project/llvm/lib/Target/AVR/
H A DAVRInstrInfo.cpp262 MachineBasicBlock *&TBB, in analyzeBranch() argument
295 TBB = I->getOperand(0).getMBB(); in analyzeBranch()
307 TBB = nullptr; in analyzeBranch()
315 TBB = I->getOperand(0).getMBB(); in analyzeBranch()
365 FBB = TBB; in analyzeBranch()
366 TBB = I->getOperand(0).getMBB(); in analyzeBranch()
374 assert(TBB); in analyzeBranch()
378 if (TBB != I->getOperand(0).getMBB()) { in analyzeBranch()
395 MachineBasicBlock *TBB, in insertBranch() argument
403 assert(TBB && "insertBranch must not be told to insert a fallthrough"); in insertBranch()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonBranchRelaxation.cpp153 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; in isJumpOutOfRange() local
157 if (HII->analyzeBranch(B, TBB, FBB, Cond, false)) { in isJumpOutOfRange()
162 TBB = FirstTerm->getOperand(HII->getCExtOpNum(*FirstTerm)).getMBB(); in isJumpOutOfRange()
164 if (TBB && &MI == &*FirstTerm) { in isJumpOutOfRange()
165 Distance = std::abs((long long)InstOffset - BlockToInstOffset[TBB]) in isJumpOutOfRange()
/freebsd/contrib/llvm-project/llvm/lib/Target/BPF/
H A DBPFInstrInfo.cpp167 MachineBasicBlock *&TBB, in analyzeBranch() argument
192 TBB = I->getOperand(0).getMBB(); in analyzeBranch()
203 TBB = nullptr; in analyzeBranch()
210 TBB = I->getOperand(0).getMBB(); in analyzeBranch()
221 MachineBasicBlock *TBB, in insertBranch() argument
229 assert(TBB && "insertBranch must not be told to insert a fallthrough"); in insertBranch()
234 BuildMI(&MBB, DL, get(BPF::JMP)).addMBB(TBB); in insertBranch()
/freebsd/contrib/llvm-project/llvm/lib/Target/ARC/
H A DARCInstrInfo.cpp171 MachineBasicBlock *&TBB, in analyzeBranch() argument
175 TBB = FBB = nullptr; in analyzeBranch()
199 TBB = I->getOperand(0).getMBB(); in analyzeBranch()
206 FBB = TBB; in analyzeBranch()
207 TBB = I->getOperand(0).getMBB(); in analyzeBranch()
373 MachineBasicBlock *TBB, in insertBranch() argument
380 assert(TBB && "insertBranch must not be told to insert a fallthrough"); in insertBranch()
385 BuildMI(&MBB, DL, get(ARC::BR)).addMBB(TBB); in insertBranch()
390 MIB.addMBB(TBB); in insertBranch()
/freebsd/contrib/llvm-project/llvm/lib/Target/Mips/
H A DMipsInstrInfo.cpp118 MachineBasicBlock *&TBB, in analyzeBranch() argument
123 BranchType BT = analyzeBranch(MBB, TBB, FBB, Cond, AllowModify, BranchInstrs); in analyzeBranch()
128 void MipsInstrInfo::BuildCondBr(MachineBasicBlock &MBB, MachineBasicBlock *TBB, in BuildCondBr() argument
140 MIB.addMBB(TBB); in BuildCondBr()
144 MachineBasicBlock *TBB, in insertBranch() argument
150 assert(TBB && "insertBranch must not be told to insert a fallthrough"); in insertBranch()
163 BuildCondBr(MBB, TBB, DL, Cond); in insertBranch()
171 BuildMI(&MBB, DL, get(UncondBrOpc)).addMBB(TBB); in insertBranch()
173 BuildCondBr(MBB, TBB, DL, Cond); in insertBranch()
214 MachineBasicBlock &MBB, MachineBasicBlock *&TBB, MachineBasicBlock *&FBB, in analyzeBranch() argument
[all …]
H A DMipsInstrInfo.h65 bool analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB,
73 unsigned insertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB,
81 BranchType analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB,
214 void BuildCondBr(MachineBasicBlock &MBB, MachineBasicBlock *TBB,
/freebsd/contrib/llvm-project/llvm/lib/Target/M68k/
H A DM68kInstrInfo.cpp86 MachineBasicBlock *&TBB, in AnalyzeBranchImpl() argument
128 TBB = UncondBranch.second; in AnalyzeBranchImpl()
141 TBB = nullptr; in AnalyzeBranchImpl()
208 TBB = UncondBranch.second; in AnalyzeBranchImpl()
214 TBB = CondBranchTarget; in AnalyzeBranchImpl()
223 TBB = CondBranchTarget; in AnalyzeBranchImpl()
234 assert(TBB); in AnalyzeBranchImpl()
241 if (OldBranchCode == BranchCode && TBB == NewTBB) in AnalyzeBranchImpl()
252 MachineBasicBlock *&TBB, in analyzeBranch() argument
256 return AnalyzeBranchImpl(MBB, TBB, FBB, Cond, AllowModify); in analyzeBranch()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64ConditionOptimizer.cpp347 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; in runOnMachineFunction() local
348 if (TII->analyzeBranch(*HBB, TBB, FBB, HeadCond)) { in runOnMachineFunction()
353 if (!TBB || TBB == HBB) { in runOnMachineFunction()
359 if (TII->analyzeBranch(*TBB, TBB_TBB, TBB_FBB, TrueCond)) { in runOnMachineFunction()
368 MachineInstr *TrueCmpMI = findSuitableCompare(TBB); in runOnMachineFunction()
H A DAArch64SpeculationHardening.cpp147 bool endsWithCondControlFlow(MachineBasicBlock &MBB, MachineBasicBlock *&TBB,
182 MachineBasicBlock &MBB, MachineBasicBlock *&TBB, MachineBasicBlock *&FBB, in endsWithCondControlFlow() argument
185 if (TII->analyzeBranch(MBB, TBB, FBB, analyzeBranchCondCode, false)) in endsWithCondControlFlow()
195 assert(TBB != nullptr); in endsWithCondControlFlow()
202 if (TBB == FBB) in endsWithCondControlFlow()
240 MachineBasicBlock *TBB = nullptr; in instrumentControlFlow() local
244 if (!endsWithCondControlFlow(MBB, TBB, FBB, CondCode)) { in instrumentControlFlow()
253 MachineBasicBlock *SplitEdgeTBB = MBB.SplitCriticalEdge(TBB, *this); in instrumentControlFlow()
H A DAArch64ConditionalCompares.cpp499 MachineBasicBlock *TBB = nullptr, *FBB = nullptr; in canConvert() local
500 if (TII->analyzeBranch(*Head, TBB, FBB, HeadCond)) { in canConvert()
508 if (!TBB || HeadCond.empty()) { in canConvert()
522 if (TBB != CmpBB) { in canConvert()
523 assert(TBB == Tail && "Unexpected TBB"); in canConvert()
528 TBB = FBB = nullptr; in canConvert()
529 if (TII->analyzeBranch(*CmpBB, TBB, FBB, CmpBBCond)) { in canConvert()
535 if (!TBB || CmpBBCond.empty()) { in canConvert()
548 if (TBB != Tail) in canConvert()
/freebsd/contrib/llvm-project/llvm/lib/Target/SPIRV/
H A DSPIRVInstrInfo.cpp211 MachineBasicBlock *&TBB, in analyzeBranch() argument
260 MachineBasicBlock *TBB, in insertBranch() argument
265 if (!TBB) in insertBranch()
267 BuildMI(&MBB, DL, get(SPIRV::OpBranch)).addMBB(TBB); in insertBranch()
/freebsd/contrib/llvm-project/llvm/lib/Target/Sparc/
H A DSparcInstrInfo.cpp243 MachineBasicBlock *&TBB, in analyzeBranch() argument
261 TBB = LastInst->getOperand(0).getMBB(); in analyzeBranch()
266 parseCondBranch(LastInst, TBB, Cond); in analyzeBranch()
285 TBB = LastInst->getOperand(0).getMBB(); in analyzeBranch()
300 parseCondBranch(SecondLastInst, TBB, Cond); in analyzeBranch()
308 TBB = SecondLastInst->getOperand(0).getMBB(); in analyzeBranch()
326 MachineBasicBlock *TBB, in insertBranch() argument
331 assert(TBB && "insertBranch must not be told to insert a fallthrough"); in insertBranch()
337 BuildMI(&MBB, DL, get(SP::BA)).addMBB(TBB); in insertBranch()
348 BuildMI(&MBB, DL, get(Opc)).addMBB(TBB).addImm(CC).addReg(Reg); in insertBranch()
[all …]

1234