reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Transforms/Scalar/GVN.cpp
 2244   if (isa<AllocaInst>(CurInst) || CurInst->isTerminator() ||
 2244   if (isa<AllocaInst>(CurInst) || CurInst->isTerminator() ||
 2245       isa<PHINode>(CurInst) || CurInst->getType()->isVoidTy() ||
 2245       isa<PHINode>(CurInst) || CurInst->getType()->isVoidTy() ||
 2246       CurInst->mayReadFromMemory() || CurInst->mayHaveSideEffects() ||
 2246       CurInst->mayReadFromMemory() || CurInst->mayHaveSideEffects() ||
 2247       isa<DbgInfoIntrinsic>(CurInst))
 2254   if (isa<CmpInst>(CurInst))
 2264   if (isa<GetElementPtrInst>(CurInst))
 2268   if (auto *CallB = dyn_cast<CallBase>(CurInst))
 2272   uint32_t ValNo = VN.lookup(CurInst);
 2283   BasicBlock *CurrentBlock = CurInst->getParent();
 2303         llvm::any_of(CurInst->operands(), [&](const Use &U) {
 2318     } else if (predV == CurInst) {
 2339     if (!isSafeToSpeculativelyExecute(CurInst)) {
 2344       if (ICF->isDominatedByICFIFromSameBlock(CurInst))
 2366     PREInstr = CurInst->clone();
 2383       PHINode::Create(CurInst->getType(), predMap.size(),
 2384                       CurInst->getName() + ".pre-phi", &CurrentBlock->front());
 2389       patchReplacementInstruction(CurInst, V);
 2400   Phi->setDebugLoc(CurInst->getDebugLoc());
 2401   CurInst->replaceAllUsesWith(Phi);
 2404   VN.erase(CurInst);
 2405   removeFromLeaderTable(ValNo, CurInst, CurrentBlock);
 2407   LLVM_DEBUG(dbgs() << "GVN PRE removed: " << *CurInst << '\n');
 2409     MD->removeInstruction(CurInst);
 2410   LLVM_DEBUG(verifyRemoved(CurInst));
 2413   ICF->removeInstruction(CurInst);
 2414   CurInst->eraseFromParent();