Lines Matching refs:NewGVN

488 class NewGVN {  class
661 NewGVN(Function &F, DominatorTree *DT, AssumptionCache *AC, in NewGVN() function in __anonb3555ec80211::NewGVN
926 bool NewGVN::isBackedge(BasicBlock *From, BasicBlock *To) const { in isBackedge()
939 MemoryUseOrDef *NewGVN::getMemoryAccess(const Instruction *I) const { in getMemoryAccess()
945 MemoryPhi *NewGVN::getMemoryAccess(const BasicBlock *BB) const { in getMemoryAccess()
950 BasicBlock *NewGVN::getBlockForValue(Value *V) const { in getBlockForValue()
968 void NewGVN::deleteExpression(const Expression *E) const { in deleteExpression()
996 void NewGVN::sortPHIOps(MutableArrayRef<ValPair> Ops) const { in sortPHIOps()
1015 PHIExpression *NewGVN::createPHIExpression(ArrayRef<ValPair> PHIOperands, in createPHIExpression()
1051 bool NewGVN::setBasicExpressionInfo(Instruction *I, BasicExpression *E) const { in setBasicExpressionInfo()
1071 const Expression *NewGVN::createBinaryExpression(unsigned Opcode, Type *T, in createBinaryExpression()
1104 NewGVN::ExprResult NewGVN::checkExprResults(Expression *E, Instruction *I, in checkExprResults()
1147 NewGVN::ExprResult NewGVN::createExpression(Instruction *I) const { in createExpression()
1229 NewGVN::createAggregateValueExpression(Instruction *I) const { in createAggregateValueExpression()
1248 const DeadExpression *NewGVN::createDeadExpression() const { in createDeadExpression()
1254 const VariableExpression *NewGVN::createVariableExpression(Value *V) const { in createVariableExpression()
1260 const Expression *NewGVN::createVariableOrConstant(Value *V) const { in createVariableOrConstant()
1266 const ConstantExpression *NewGVN::createConstantExpression(Constant *C) const { in createConstantExpression()
1272 const UnknownExpression *NewGVN::createUnknownExpression(Instruction *I) const { in createUnknownExpression()
1279 NewGVN::createCallExpression(CallInst *CI, const MemoryAccess *MA) const { in createCallExpression()
1296 bool NewGVN::someEquivalentDominates(const Instruction *Inst, in someEquivalentDominates()
1332 Value *NewGVN::lookupOperandLeader(Value *V) const { in lookupOperandLeader()
1346 const MemoryAccess *NewGVN::lookupMemoryLeader(const MemoryAccess *MA) const { in lookupMemoryLeader()
1357 bool NewGVN::isMemoryAccessTOP(const MemoryAccess *MA) const { in isMemoryAccessTOP()
1361 LoadExpression *NewGVN::createLoadExpression(Type *LoadType, Value *PointerOp, in createLoadExpression()
1380 NewGVN::createStoreExpression(StoreInst *SI, const MemoryAccess *MA) const { in createStoreExpression()
1397 const Expression *NewGVN::performSymbolicStoreEvaluation(Instruction *I) const { in performSymbolicStoreEvaluation()
1449 NewGVN::performSymbolicLoadCoercion(Type *LoadType, Value *LoadPtr, in performSymbolicLoadCoercion()
1522 const Expression *NewGVN::performSymbolicLoadEvaluation(Instruction *I) const { in performSymbolicLoadEvaluation()
1564 NewGVN::ExprResult
1565 NewGVN::performSymbolicPredicateInfoEvaluation(IntrinsicInst *I) const { in performSymbolicPredicateInfoEvaluation()
1605 NewGVN::ExprResult NewGVN::performSymbolicCallEvaluation(Instruction *I) const { in performSymbolicCallEvaluation()
1648 CongruenceClass *NewGVN::getMemoryClass(const MemoryAccess *MA) const { in getMemoryClass()
1656 bool NewGVN::setMemoryClass(const MemoryAccess *From, in setMemoryClass()
1704 bool NewGVN::isCycleFree(const Instruction *I) const { in isCycleFree()
1734 NewGVN::performSymbolicPHIEvaluation(ArrayRef<ValPair> PHIOps, in performSymbolicPHIEvaluation()
1831 NewGVN::performSymbolicAggrValueEvaluation(Instruction *I) const { in performSymbolicAggrValueEvaluation()
1845 NewGVN::ExprResult NewGVN::performSymbolicCmpEvaluation(Instruction *I) const { in performSymbolicCmpEvaluation()
1969 NewGVN::ExprResult
1970 NewGVN::performSymbolicEvaluation(Instruction *I, in performSymbolicEvaluation()
2057 void NewGVN::touchAndErase(Map &M, const KeyType &Key) { in touchAndErase()
2066 void NewGVN::addAdditionalUsers(Value *To, Value *User) const { in addAdditionalUsers()
2072 void NewGVN::addAdditionalUsers(ExprResult &Res, Instruction *User) const { in addAdditionalUsers()
2086 void NewGVN::markUsersTouched(Value *V) { in markUsersTouched()
2095 void NewGVN::addMemoryUsers(const MemoryAccess *To, MemoryAccess *U) const { in addMemoryUsers()
2100 void NewGVN::markMemoryDefTouched(const MemoryAccess *MA) { in markMemoryDefTouched()
2104 void NewGVN::markMemoryUsersTouched(const MemoryAccess *MA) { in markMemoryUsersTouched()
2113 void NewGVN::markPredicateUsersTouched(Instruction *I) { in markPredicateUsersTouched()
2118 void NewGVN::markMemoryLeaderChangeTouched(CongruenceClass *CC) { in markMemoryLeaderChangeTouched()
2125 void NewGVN::markValueLeaderChangeTouched(CongruenceClass *CC) { in markValueLeaderChangeTouched()
2136 T *NewGVN::getMinDFSOfRange(const Range &R) const { in getMinDFSOfRange()
2149 const MemoryAccess *NewGVN::getNextMemoryLeader(CongruenceClass *CC) const { in getNextMemoryLeader()
2174 Value *NewGVN::getNextValueLeader(CongruenceClass *CC) const { in getNextValueLeader()
2202 void NewGVN::moveMemoryToNewCongruenceClass(Instruction *I, in moveMemoryToNewCongruenceClass()
2242 void NewGVN::moveValueToNewCongruenceClass(Instruction *I, const Expression *E, in moveValueToNewCongruenceClass()
2330 void NewGVN::markPhiOfOpsChanged(const Expression *E) { in markPhiOfOpsChanged()
2335 void NewGVN::performCongruenceFinding(Instruction *I, const Expression *E) { in performCongruenceFinding()
2434 void NewGVN::updateReachableEdge(BasicBlock *From, BasicBlock *To) { in updateReachableEdge()
2467 Value *NewGVN::findConditionEquivalence(Value *Cond) const { in findConditionEquivalence()
2473 void NewGVN::processOutgoingEdges(Instruction *TI, BasicBlock *B) { in processOutgoingEdges()
2554 void NewGVN::removePhiOfOps(Instruction *I, PHINode *PHITemp) { in removePhiOfOps()
2567 void NewGVN::addPhiOfOps(PHINode *Op, BasicBlock *BB, in addPhiOfOps()
2594 bool NewGVN::OpIsSafeForPHIOfOps(Value *V, const BasicBlock *PHIBlock, in OpIsSafeForPHIOfOps()
2656 Value *NewGVN::findLeaderForInst(Instruction *TransInst, in findLeaderForInst()
2694 NewGVN::makePossiblePHIOfOps(Instruction *I, in makePossiblePHIOfOps()
2873 void NewGVN::initializeCongruenceClasses(Function &F) { in initializeCongruenceClasses()
2935 void NewGVN::cleanupTables() { in cleanupTables()
2993 std::pair<unsigned, unsigned> NewGVN::assignDFSNumbers(BasicBlock *B, in assignDFSNumbers()
3024 void NewGVN::updateProcessedCount(const Value *V) { in updateProcessedCount()
3037 void NewGVN::valueNumberMemoryPhi(MemoryPhi *MP) { in valueNumberMemoryPhi()
3095 void NewGVN::valueNumberInstruction(Instruction *I) { in valueNumberInstruction()
3140 bool NewGVN::singleReachablePHIPath( in singleReachablePHIPath()
3183 void NewGVN::verifyMemoryCongruency() const { in verifyMemoryCongruency()
3277 void NewGVN::verifyIterationSettled(Function &F) { in verifyIterationSettled()
3329 void NewGVN::verifyStoreExpressions() const { in verifyStoreExpressions()
3364 void NewGVN::iterateTouchedInstructions() { in iterateTouchedInstructions()
3427 bool NewGVN::runGVN() { in runGVN()
3522 struct NewGVN::ValueDFS {
3583 void NewGVN::convertClassToDFSOrdered( in convertClassToDFSOrdered()
3674 void NewGVN::convertClassToLoadsAndStores( in convertClassToLoadsAndStores()
3703 void NewGVN::deleteInstructionsInBlock(BasicBlock *BB) { in deleteInstructionsInBlock()
3732 void NewGVN::markInstructionForDeletion(Instruction *I) { in markInstructionForDeletion()
3737 void NewGVN::replaceInstruction(Instruction *I, Value *V) { in replaceInstruction()
3788 CongruenceClass *NewGVN::getClassForExpression(const Expression *E) const { in getClassForExpression()
3798 Value *NewGVN::findPHIOfOpsLeader(const Expression *E, in findPHIOfOpsLeader()
3829 bool NewGVN::eliminateInstructions(Function &F) { in eliminateInstructions()
4177 unsigned int NewGVN::getRank(const Value *V) const { in getRank()
4205 bool NewGVN::shouldSwapOperands(const Value *A, const Value *B) const { in shouldSwapOperands()
4212 bool NewGVN::shouldSwapOperandsForIntrinsic(const Value *A, const Value *B, in shouldSwapOperandsForIntrinsic()
4245 NewGVN(F, &DT, &AC, &TLI, &AA, &MSSA, F.getDataLayout()) in run()