Lines Matching refs:BBInfo
132 struct BBInfo { struct in __anon8f1f3a690111::IfConverter
152 BBInfo() : IsDone(false), IsBeingAnalyzed(false), in BBInfo() argument
171 BBInfo &BBI;
179 IfcvtToken(BBInfo &b, IfcvtKind k, bool s, unsigned d, unsigned d2 = 0, in IfcvtToken()
187 std::vector<BBInfo> BBAnalysis;
226 bool reverseBranchCondition(BBInfo &BBI) const;
227 bool ValidSimple(BBInfo &TrueBBI, unsigned &Dups,
229 bool ValidTriangle(BBInfo &TrueBBI, BBInfo &FalseBBI,
238 bool ValidDiamond(BBInfo &TrueBBI, BBInfo &FalseBBI,
240 BBInfo &TrueBBICalc, BBInfo &FalseBBICalc) const;
241 bool ValidForkedDiamond(BBInfo &TrueBBI, BBInfo &FalseBBI,
243 BBInfo &TrueBBICalc, BBInfo &FalseBBICalc) const;
244 void AnalyzeBranches(BBInfo &BBI);
245 void ScanInstructions(BBInfo &BBI,
252 BBInfo &TrueBBI, BBInfo &FalseBBI) const;
255 bool FeasibilityAnalysis(BBInfo &BBI, SmallVectorImpl<MachineOperand> &Pred,
261 bool IfConvertSimple(BBInfo &BBI, IfcvtKind Kind);
262 bool IfConvertTriangle(BBInfo &BBI, IfcvtKind Kind);
263 bool IfConvertDiamondCommon(BBInfo &BBI, BBInfo &TrueBBI, BBInfo &FalseBBI,
267 bool IfConvertDiamond(BBInfo &BBI, IfcvtKind Kind,
270 bool IfConvertForkedDiamond(BBInfo &BBI, IfcvtKind Kind,
273 void PredicateBlock(BBInfo &BBI,
277 void CopyAndPredicateBlock(BBInfo &ToBBI, BBInfo &FromBBI,
280 void MergeBlocks(BBInfo &ToBBI, BBInfo &FromBBI, bool AddEdges = true);
289 bool MeetIfcvtSizeLimit(BBInfo &TBBInfo, BBInfo &FBBInfo, in MeetIfcvtSizeLimit()
399 bool blockAlwaysFallThrough(BBInfo &BBI) const { in blockAlwaysFallThrough()
490 BBInfo &BBI = Token->BBI; in INITIALIZE_PASS_DEPENDENCY()
619 bool IfConverter::reverseBranchCondition(BBInfo &BBI) const { in reverseBranchCondition()
643 bool IfConverter::ValidSimple(BBInfo &TrueBBI, unsigned &Dups, in ValidSimple()
668 bool IfConverter::ValidTriangle(BBInfo &TrueBBI, BBInfo &FalseBBI, in ValidTriangle()
813 BBInfo &TrueBBI, BBInfo &FalseBBI) const { in RescanInstructions()
875 BBInfo &TrueBBI, BBInfo &FalseBBI, in ValidForkedDiamond()
877 BBInfo &TrueBBICalc, BBInfo &FalseBBICalc) const { in ValidForkedDiamond()
957 BBInfo &TrueBBI, BBInfo &FalseBBI, in ValidDiamond()
959 BBInfo &TrueBBICalc, BBInfo &FalseBBICalc) const { in ValidDiamond()
1019 void IfConverter::AnalyzeBranches(BBInfo &BBI) { in AnalyzeBranches()
1055 void IfConverter::ScanInstructions(BBInfo &BBI, in ScanInstructions()
1163 bool IfConverter::FeasibilityAnalysis(BBInfo &BBI, in FeasibilityAnalysis()
1222 BBInfo &BBI = BBAnalysis[BB->getNumber()]; in AnalyzeBlock()
1270 BBInfo &TrueBBI = BBAnalysis[BBI.TrueBB->getNumber()]; in AnalyzeBlock()
1271 BBInfo &FalseBBI = BBAnalysis[BBI.FalseBB->getNumber()]; in AnalyzeBlock()
1293 BBInfo TrueBBICalc, FalseBBICalc; in AnalyzeBlock()
1458 BBInfo &PBBI = BBAnalysis[Predecessor->getNumber()]; in InvalidatePreds()
1519 bool IfConverter::IfConvertSimple(BBInfo &BBI, IfcvtKind Kind) { in IfConvertSimple()
1520 BBInfo &TrueBBI = BBAnalysis[BBI.TrueBB->getNumber()]; in IfConvertSimple()
1521 BBInfo &FalseBBI = BBAnalysis[BBI.FalseBB->getNumber()]; in IfConvertSimple()
1522 BBInfo *CvtBBI = &TrueBBI; in IfConvertSimple()
1523 BBInfo *NextBBI = &FalseBBI; in IfConvertSimple()
1604 bool IfConverter::IfConvertTriangle(BBInfo &BBI, IfcvtKind Kind) { in IfConvertTriangle()
1605 BBInfo &TrueBBI = BBAnalysis[BBI.TrueBB->getNumber()]; in IfConvertTriangle()
1606 BBInfo &FalseBBI = BBAnalysis[BBI.FalseBB->getNumber()]; in IfConvertTriangle()
1607 BBInfo *CvtBBI = &TrueBBI; in IfConvertTriangle()
1608 BBInfo *NextBBI = &FalseBBI; in IfConvertTriangle()
1640 BBInfo &PBBI = BBAnalysis[PBB->getNumber()]; in IfConvertTriangle()
1759 BBInfo &BBI, BBInfo &TrueBBI, BBInfo &FalseBBI, in IfConvertDiamondCommon()
1780 BBInfo *BBI1 = &TrueBBI; in IfConvertDiamondCommon()
1781 BBInfo *BBI2 = &FalseBBI; in IfConvertDiamondCommon()
1993 BBInfo &BBI, IfcvtKind Kind, in IfConvertForkedDiamond()
1996 BBInfo &TrueBBI = BBAnalysis[BBI.TrueBB->getNumber()]; in IfConvertForkedDiamond()
1997 BBInfo &FalseBBI = BBAnalysis[BBI.FalseBB->getNumber()]; in IfConvertForkedDiamond()
2028 bool IfConverter::IfConvertDiamond(BBInfo &BBI, IfcvtKind Kind, in IfConvertDiamond()
2031 BBInfo &TrueBBI = BBAnalysis[BBI.TrueBB->getNumber()]; in IfConvertDiamond()
2032 BBInfo &FalseBBI = BBAnalysis[BBI.FalseBB->getNumber()]; in IfConvertDiamond()
2060 BBInfo &TailBBI = BBAnalysis[TailBB->getNumber()]; in IfConvertDiamond()
2118 void IfConverter::PredicateBlock(BBInfo &BBI, in PredicateBlock()
2161 void IfConverter::CopyAndPredicateBlock(BBInfo &ToBBI, BBInfo &FromBBI, in CopyAndPredicateBlock()
2227 void IfConverter::MergeBlocks(BBInfo &ToBBI, BBInfo &FromBBI, bool AddEdges) { in MergeBlocks()