Lines Matching refs:BCECmpBlock
170 class BCECmpBlock { class
172 BCECmpBlock() {} in BCECmpBlock() function in __anond623a0e40111::BCECmpBlock
174 BCECmpBlock(BCEAtom L, BCEAtom R, int SizeBits) in BCECmpBlock() function in __anond623a0e40111::BCECmpBlock
229 bool BCECmpBlock::canSinkBCECmpInst(const Instruction *Inst, in canSinkBCECmpInst()
254 void BCECmpBlock::split(BasicBlock *NewParent, AliasAnalysis *AA) const { in split()
274 bool BCECmpBlock::canSplit(AliasAnalysis *AA) const { in canSplit()
286 bool BCECmpBlock::doesOtherWork() const { in doesOtherWork()
304 BCECmpBlock visitICmp(const ICmpInst *const CmpI, in visitICmp()
328 return BCECmpBlock(std::move(Lhs), std::move(Rhs), in visitICmp()
334 BCECmpBlock visitCmpBlock(Value *const Val, BasicBlock *const Block, in visitCmpBlock()
375 static inline void enqueueBlock(std::vector<BCECmpBlock> &Comparisons, in enqueueBlock()
376 BCECmpBlock &Comparison) { in enqueueBlock()
402 static bool IsContiguous(const BCECmpBlock &First, in IsContiguous()
403 const BCECmpBlock &Second) { in IsContiguous()
413 void mergeComparisons(ArrayRef<BCECmpBlock> Comparisons,
418 std::vector<BCECmpBlock> Comparisons_;
428 std::vector<BCECmpBlock> Comparisons; in BCECmpChain()
433 BCECmpBlock Comparison = visitCmpBlock(Phi.getIncomingValueForBlock(Block), in BCECmpChain()
512 [](const BCECmpBlock &LhsBlock, const BCECmpBlock &RhsBlock) { in BCECmpChain()
604 void BCECmpChain::mergeComparisons(ArrayRef<BCECmpBlock> Comparisons, in mergeComparisons()
619 [](const BCECmpBlock &B) { return B.RequireSplit; }); in mergeComparisons()
626 [](int Size, const BCECmpBlock &C) { in mergeComparisons()