Lines Matching refs:Num

593   uint32_t Num = valueNumbering.lookup(V);
597 NumberingPhi.erase(Num);
1629 bool GVN::ValueTable::areAllValsInBB(uint32_t Num, const BasicBlock *BB,
1631 LeaderTableEntry *Vals = &Gvn.LeaderTable[Num];
1639 const BasicBlock *PhiBlock, uint32_t Num,
1641 auto FindRes = PhiTranslateTable.find({Num, Pred});
1644 uint32_t NewNum = phiTranslateImpl(Pred, PhiBlock, Num, Gvn);
1645 PhiTranslateTable.insert({{Num, Pred}, NewNum});
1649 // Return true if the value number \p Num and NewNum have equal value.
1651 bool GVN::ValueTable::areCallValsEqual(uint32_t Num, uint32_t NewNum,
1655 LeaderTableEntry *Vals = &Gvn.LeaderTable[Num];
1684 /// Translate value number \p Num using phis, so that it has the values of
1688 uint32_t Num, GVN &Gvn) {
1689 if (PHINode *PN = NumberingPhi[Num]) {
1695 return Num;
1698 // If there is any value related with Num is defined in a BB other than
1701 if (!areAllValsInBB(Num, PhiBlock, Gvn))
1702 return Num;
1704 if (Num >= ExprIdx.size() || ExprIdx[Num] == 0)
1705 return Num;
1706 Expression Exp = Expressions[ExprIdx[Num]];
1731 if (Exp.opcode == Instruction::Call && NewNum != Num)
1732 return areCallValsEqual(Num, NewNum, Pred, PhiBlock, Gvn) ? NewNum : Num;
1735 return Num;
1740 void GVN::ValueTable::eraseTranslateCacheEntry(uint32_t Num,
1743 auto FindRes = PhiTranslateTable.find({Num, Pred});
1937 uint32_t Num = VN.lookupOrAddCmp(Cmp->getOpcode(), NotPred, Op0, Op1);
1940 if (Num < NextNum) {
1941 Value *NotCmp = findLeader(Root.getEnd(), Num);
1960 addToLeaderTable(Num, NotVal, Root.getEnd());
2007 unsigned Num = VN.lookupOrAdd(LI);
2008 addToLeaderTable(Num, LI, LI->getParent());
2071 unsigned Num = VN.lookupOrAdd(I);
2076 addToLeaderTable(Num, I, I->getParent());
2083 if (Num >= NextNum) {
2084 addToLeaderTable(Num, I, I->getParent());
2090 Value *Repl = findLeader(I->getParent(), Num);
2093 addToLeaderTable(Num, I, I->getParent());
2266 unsigned Num = VN.lookupOrAdd(Instr);
2267 VN.add(Instr, Num);
2270 addToLeaderTable(Num, Instr, Pred);