Lines Matching refs:Operation
29 struct SimpleOperationInfo : public llvm::DenseMapInfo<Operation *> {
30 static unsigned getHashValue(const Operation *opC) { in getHashValue()
32 const_cast<Operation *>(opC), in getHashValue()
37 static bool isEqual(const Operation *lhsC, const Operation *rhsC) { in isEqual()
38 auto *lhs = const_cast<Operation *>(lhsC); in isEqual()
39 auto *rhs = const_cast<Operation *>(rhsC); in isEqual()
46 const_cast<Operation *>(lhsC), const_cast<Operation *>(rhsC), in isEqual()
60 llvm::ScopedHashTableVal<Operation *, Operation *>>;
61 using ScopedMapTy = llvm::ScopedHashTable<Operation *, Operation *,
70 DenseMap<Operation *, std::pair<Operation *, MemoryEffects::Effect *>>;
89 LogicalResult simplifyOperation(ScopedMapTy &knownValues, Operation *op,
97 void replaceUsesAndDelete(ScopedMapTy &knownValues, Operation *op,
98 Operation *existing, bool hasSSADominance);
102 bool hasOtherSideEffectingOpInBetween(Operation *fromOp, Operation *toOp);
105 std::vector<Operation *> opsToErase;
111 void CSE::replaceUsesAndDelete(ScopedMapTy &knownValues, Operation *op, in replaceUsesAndDelete()
112 Operation *existing, bool hasSSADominance) { in replaceUsesAndDelete()
145 bool CSE::hasOtherSideEffectingOpInBetween(Operation *fromOp, Operation *toOp) { in hasOtherSideEffectingOpInBetween()
152 Operation *nextOp = fromOp->getNextNode(); in hasOtherSideEffectingOpInBetween()
186 LogicalResult CSE::simplifyOperation(ScopedMapTy &knownValues, Operation *op, in simplifyOperation()
331 Operation *rootOp = getOperation(); in runOnOperation()