• Home
  • Raw
  • Download

Lines Matching refs:SCCNodes

66                                                   const SCCNodeSet &SCCNodes) {  in checkFunctionMemoryAccess()  argument
97 SCCNodes.count(CS.getCalledFunction())) in checkFunctionMemoryAccess()
176 static bool addReadAttrs(const SCCNodeSet &SCCNodes, AARGetterT AARGetter) { in addReadAttrs() argument
180 for (Function *F : SCCNodes) { in addReadAttrs()
184 switch (checkFunctionMemoryAccess(*F, AAR, SCCNodes)) { in addReadAttrs()
199 for (Function *F : SCCNodes) { in addReadAttrs()
275 ArgumentUsesTracker(const SCCNodeSet &SCCNodes) in ArgumentUsesTracker()
276 : Captured(false), SCCNodes(SCCNodes) {} in ArgumentUsesTracker()
288 if (!F || !F->hasExactDefinition() || !SCCNodes.count(F)) { in captured()
328 const SCCNodeSet &SCCNodes; member
360 const SmallPtrSet<Argument *, 8> &SCCNodes) { in determinePointerReadAttrs() argument
449 if (!SCCNodes.count(&*std::next(F->arg_begin(), UseIndex)) || in determinePointerReadAttrs()
487 static bool addArgumentAttrs(const SCCNodeSet &SCCNodes) { in addArgumentAttrs() argument
497 for (Function *F : SCCNodes) { in addArgumentAttrs()
525 ArgumentUsesTracker Tracker(SCCNodes); in addArgumentAttrs()
678 static bool isFunctionMallocLike(Function *F, const SCCNodeSet &SCCNodes) { in isFunctionMallocLike() argument
726 if (CS.getCalledFunction() && SCCNodes.count(CS.getCalledFunction())) in isFunctionMallocLike()
741 static bool addNoAliasAttrs(const SCCNodeSet &SCCNodes) { in addNoAliasAttrs() argument
744 for (Function *F : SCCNodes) { in addNoAliasAttrs()
760 if (!isFunctionMallocLike(F, SCCNodes)) in addNoAliasAttrs()
765 for (Function *F : SCCNodes) { in addNoAliasAttrs()
784 static bool isReturnNonNull(Function *F, const SCCNodeSet &SCCNodes, in isReturnNonNull() argument
832 if (Callee && SCCNodes.count(Callee)) { in isReturnNonNull()
848 static bool addNonNullAttrs(const SCCNodeSet &SCCNodes) { in addNonNullAttrs() argument
857 for (Function *F : SCCNodes) { in addNonNullAttrs()
875 if (isReturnNonNull(F, SCCNodes, Speculative)) { in addNonNullAttrs()
892 for (Function *F : SCCNodes) { in addNonNullAttrs()
911 static bool removeConvergentAttrs(const SCCNodeSet &SCCNodes) { in removeConvergentAttrs() argument
916 for (Function *F : SCCNodes) { in removeConvergentAttrs()
929 SCCNodes.count(CS.getCalledFunction()) == 0) in removeConvergentAttrs()
941 for (Function *F : SCCNodes) { in removeConvergentAttrs()
959 static bool addNoRecurseAttrs(const SCCNodeSet &SCCNodes) { in addNoRecurseAttrs() argument
963 if (SCCNodes.size() != 1) in addNoRecurseAttrs()
966 Function *F = *SCCNodes.begin(); in addNoRecurseAttrs()
1001 SCCNodeSet SCCNodes; in run() local
1023 SCCNodes.insert(&F); in run()
1027 Changed |= addReadAttrs(SCCNodes, AARGetter); in run()
1028 Changed |= addArgumentAttrs(SCCNodes); in run()
1033 Changed |= addNoAliasAttrs(SCCNodes); in run()
1034 Changed |= addNonNullAttrs(SCCNodes); in run()
1035 Changed |= removeConvergentAttrs(SCCNodes); in run()
1036 Changed |= addNoRecurseAttrs(SCCNodes); in run()
1078 SCCNodeSet SCCNodes; in runImpl() local
1089 SCCNodes.insert(F); in runImpl()
1092 Changed |= addReadAttrs(SCCNodes, AARGetter); in runImpl()
1093 Changed |= addArgumentAttrs(SCCNodes); in runImpl()
1098 Changed |= addNoAliasAttrs(SCCNodes); in runImpl()
1099 Changed |= addNonNullAttrs(SCCNodes); in runImpl()
1100 Changed |= removeConvergentAttrs(SCCNodes); in runImpl()
1101 Changed |= addNoRecurseAttrs(SCCNodes); in runImpl()