Lines Matching defs:ExprsInSubprogram
2203 const SmallSetVector<Value *, 32> &ExprsInSubprogram;
2215 const SmallSetVector<Value *, 32> &ExprsInSubprogram,
2218 ExprsInSubprogram(ExprsInSubprogram), Leaf(Leaf) {}
2253 bool isMatrix(Value *V) const { return ExprsInSubprogram.count(V); }
2467 /// Return all leaves of the expressions in \p ExprsInSubprogram. Those are
2469 /// \p ExprsInSubprogram. Currently that should only include stores.
2471 getExpressionLeaves(const SmallSetVector<Value *, 32> &ExprsInSubprogram) {
2473 for (auto *Expr : ExprsInSubprogram)
2475 !any_of(Expr->users(), [&ExprsInSubprogram](User *U) {
2476 return ExprsInSubprogram.count(U);
2484 /// the ones in \p ExprsInSubprogram.
2486 const SmallSetVector<Value *, 32> &ExprsInSubprogram,
2489 if (!ExprsInSubprogram.count(V))
2496 collectSharedInfo(Leaf, Op, ExprsInSubprogram, Shared);
2501 /// Limit the matrix operations to the ones in \p ExprsInSubprogram.
2504 const SmallSetVector<Value *, 32> &ExprsInSubprogram,
2506 if (!ExprsInSubprogram.count(Root))
2524 auto C = sumOpInfos(Op, ReusedExprs, ExprsInSubprogram, Shared);
2555 SmallSetVector<Value *, 32> ExprsInSubprogram(KV.second.begin(),
2557 auto Leaves = getExpressionLeaves(ExprsInSubprogram);
2561 collectSharedInfo(Leaf, Leaf, ExprsInSubprogram, Shared);
2579 sumOpInfos(L, ReusedExprs, ExprsInSubprogram, Shared);
2602 Rem << ("\n" + linearize(L, Shared, ExprsInSubprogram, DL));
2611 const SmallSetVector<Value *, 32> &ExprsInSubprogram,
2613 ExprLinearizer Lin(DL, Inst2Matrix, Shared, ExprsInSubprogram, L);