Lines Matching refs:GVN
77 struct llvm::GVN::Expression {
104 template <> struct DenseMapInfo<GVN::Expression> {
105 static inline GVN::Expression getEmptyKey() { return ~0U; } in getEmptyKey()
107 static inline GVN::Expression getTombstoneKey() { return ~1U; } in getTombstoneKey()
109 static unsigned getHashValue(const GVN::Expression &e) { in getHashValue()
113 static bool isEqual(const GVN::Expression &LHS, const GVN::Expression &RHS) { in isEqual()
193 GVN &gvn) const;
222 Value *MaterializeAdjustedValue(LoadInst *LI, GVN &gvn) const { in MaterializeAdjustedValue()
231 GVN::Expression GVN::ValueTable::createExpr(Instruction *I) { in createExpr()
265 GVN::Expression GVN::ValueTable::createCmpExpr(unsigned Opcode, in createCmpExpr()
284 GVN::Expression GVN::ValueTable::createExtractvalueExpr(ExtractValueInst *EI) { in createExtractvalueExpr()
340 GVN::ValueTable::ValueTable() : nextValueNumber(1) {} in ValueTable()
341 GVN::ValueTable::ValueTable(const ValueTable &Arg) in ValueTable()
345 GVN::ValueTable::ValueTable(ValueTable &&Arg) in ValueTable()
350 GVN::ValueTable::~ValueTable() {} in ~ValueTable()
353 void GVN::ValueTable::add(Value *V, uint32_t num) { in add()
357 uint32_t GVN::ValueTable::lookupOrAddCall(CallInst *C) { in lookupOrAddCall()
467 bool GVN::ValueTable::exists(Value *V) const { return valueNumbering.count(V) != 0; } in exists()
471 uint32_t GVN::ValueTable::lookupOrAdd(Value *V) { in lookupOrAdd()
542 uint32_t GVN::ValueTable::lookup(Value *V) const { in lookup()
552 uint32_t GVN::ValueTable::lookupOrAddCmp(unsigned Opcode, in lookupOrAddCmp()
562 void GVN::ValueTable::clear() { in clear()
569 void GVN::ValueTable::erase(Value *V) { in erase()
575 void GVN::ValueTable::verifyRemoved(const Value *V) const { in verifyRemoved()
586 PreservedAnalyses GVN::run(Function &F, AnalysisManager<Function> &AM) { in run()
606 void GVN::dump(DenseMap<uint32_t, Value*>& d) { in dump()
1027 GVN &gvn) { in GetLoadValueForLoad()
1145 GVN &gvn) { in ConstructSSAForLoadSet()
1176 GVN &gvn) const { in MaterializeAdjustedValue()
1221 bool GVN::AnalyzeLoadAvailability(LoadInst *LI, MemDepResult DepInfo, in AnalyzeLoadAvailability()
1348 void GVN::AnalyzeLoadAvailability(LoadInst *LI, LoadDepVect &Deps, in AnalyzeLoadAvailability()
1394 bool GVN::PerformLoadPRE(LoadInst *LI, AvailValInBlkVect &ValuesPerBlock, in PerformLoadPRE()
1603 bool GVN::processNonLocalLoad(LoadInst *LI) { in processNonLocalLoad()
1681 bool GVN::processAssumeIntrinsic(IntrinsicInst *IntrinsicI) { in processAssumeIntrinsic()
1772 bool GVN::processLoad(LoadInst *L) { in processLoad()
1827 Value *GVN::findLeader(const BasicBlock *BB, uint32_t num) { in findLeader()
1868 bool GVN::replaceOperandsWithConsts(Instruction *Instr) const { in replaceOperandsWithConsts()
1890 bool GVN::propagateEquality(Value *LHS, Value *RHS, const BasicBlockEdge &Root, in propagateEquality()
2048 bool GVN::processInstruction(Instruction *I) { in processInstruction()
2187 bool GVN::runImpl(Function &F, AssumptionCache &RunAC, DominatorTree &RunDT, in runImpl()
2245 bool GVN::processBlock(BasicBlock *BB) { in processBlock()
2295 bool GVN::performScalarPREInsertion(Instruction *Instr, BasicBlock *Pred, in performScalarPREInsertion()
2338 bool GVN::performScalarPRE(Instruction *CurInst) { in performScalarPRE()
2469 bool GVN::performPRE(Function &F) { in performPRE()
2496 BasicBlock *GVN::splitCriticalEdges(BasicBlock *Pred, BasicBlock *Succ) { in splitCriticalEdges()
2506 bool GVN::splitCriticalEdges() { in splitCriticalEdges()
2519 bool GVN::iterateOnFunction(Function &F) { in iterateOnFunction()
2543 void GVN::cleanupGlobalSets() { in cleanupGlobalSets()
2551 void GVN::verifyRemoved(const Instruction *Inst) const { in verifyRemoved()
2572 void GVN::addDeadBlock(BasicBlock *BB) { in addDeadBlock()
2654 bool GVN::processFoldableCondBr(BranchInst *BI) { in processFoldableCondBr()
2682 void GVN::assignValNumForDeadCode() { in assignValNumForDeadCode()
2726 GVN Impl;