Lines Matching refs:Function

110 using SCCNodeSet = SmallSetVector<Function *, 8>;
160 checkFunctionMemoryAccess(Function &F, bool ThisBody, AAResults &AAR, in checkFunctionMemoryAccess()
252 MemoryEffects llvm::computeFunctionBodyMemoryAccess(Function &F, in computeFunctionBodyMemoryAccess()
260 SmallSet<Function *, 8> &Changed) { in addMemoryAttrs() argument
263 for (Function *F : SCCNodes) { in addMemoryAttrs()
283 for (Function *F : SCCNodes) { in addMemoryAttrs()
544 Function *F = CB->getCalledFunction(); in captured()
688 if (Function *F = CB.getCalledFunction()) in determinePointerAccessAttrs()
754 SmallSet<Function *, 8> &Changed) { in addArgumentReturnedAttrs() argument
756 for (Function *F : SCCNodes) { in addArgumentReturnedAttrs()
802 static bool addArgumentAttrsFromCallsites(Function &F) { in addArgumentAttrsFromCallsites()
871 SmallSet<Function *, 8> &Changed) { in addArgumentAttrs() argument
876 for (Function *F : SCCNodes) { in addArgumentAttrs()
1055 static bool isFunctionMallocLike(Function *F, const SCCNodeSet &SCCNodes) { in isFunctionMallocLike()
1120 SmallSet<Function *, 8> &Changed) { in addNoAliasAttrs() argument
1123 for (Function *F : SCCNodes) { in addNoAliasAttrs()
1143 for (Function *F : SCCNodes) { in addNoAliasAttrs()
1161 static bool isReturnNonNull(Function *F, const SCCNodeSet &SCCNodes, in isReturnNonNull()
1213 Function *Callee = CB.getCalledFunction(); in isReturnNonNull()
1233 SmallSet<Function *, 8> &Changed) { in addNonNullAttrs() argument
1240 for (Function *F : SCCNodes) { in addNonNullAttrs()
1275 for (Function *F : SCCNodes) { in addNonNullAttrs()
1290 SmallSet<Function *, 8> &Changed) { in addNoUndefAttrs() argument
1293 for (Function *F : SCCNodes) { in addNoUndefAttrs()
1344 std::function<bool(const Function &)> SkipFunction;
1350 std::function<void(Function &)> SetAttribute;
1360 std::function<bool(const Function &)> SkipFunc, in InferenceDescriptor()
1362 std::function<void(Function &)> SetAttr, in InferenceDescriptor()
1377 void run(const SCCNodeSet &SCCNodes, SmallSet<Function *, 8> &Changed);
1383 SmallSet<Function *, 8> &Changed) { in run() argument
1388 for (Function *F : SCCNodes) { in run()
1437 for (Function *F : SCCNodes) in run()
1472 if (Function *Callee = CI->getCalledFunction()) { in InstrBreaksNonThrowing()
1493 if (Function *Callee = CB->getCalledFunction()) in InstrBreaksNoFree()
1548 if (Function *Callee = CB->getCalledFunction()) in InstrBreaksNoSync()
1559 SmallSet<Function *, 8> &Changed) { in inferConvergent() argument
1570 [](const Function &F) { return !F.isConvergent(); }, in inferConvergent()
1575 [](Function &F) { in inferConvergent()
1590 SmallSet<Function *, 8> &Changed) { in inferAttrsFromFunctionBodies() argument
1602 [](const Function &F) { return F.doesNotThrow(); }, in inferAttrsFromFunctionBodies()
1607 [](Function &F) { in inferAttrsFromFunctionBodies()
1625 [](const Function &F) { return F.doesNotFreeMemory(); }, in inferAttrsFromFunctionBodies()
1630 [](Function &F) { in inferAttrsFromFunctionBodies()
1641 [](const Function &F) { return F.hasNoSync(); }, in inferAttrsFromFunctionBodies()
1646 [](Function &F) { in inferAttrsFromFunctionBodies()
1659 SmallSet<Function *, 8> &Changed) { in addNoRecurseAttrs() argument
1666 Function *F = *SCCNodes.begin(); in addNoRecurseAttrs()
1676 Function *Callee = CB->getCalledFunction(); in addNoRecurseAttrs()
1708 static bool canReturn(Function &F) { in canReturn()
1729 SmallSet<Function *, 8> &Changed) { in addNoReturnAttrs() argument
1730 for (Function *F : SCCNodes) { in addNoReturnAttrs()
1742 static bool functionWillReturn(const Function &F) { in functionWillReturn()
1773 SmallSet<Function *, 8> &Changed) { in addWillReturn() argument
1774 for (Function *F : SCCNodes) { in addWillReturn()
1784 static SCCNodesResult createSCCNodeSet(ArrayRef<Function *> Functions) { in createSCCNodeSet()
1787 for (Function *F : Functions) { in createSCCNodeSet()
1815 static SmallSet<Function *, 8>
1816 deriveAttrsInPostOrder(ArrayRef<Function *> Functions, AARGetterT &&AARGetter, in deriveAttrsInPostOrder()
1824 SmallSet<Function *, 8> Changed; in deriveAttrsInPostOrder()
1851 for (Function *F : Nodes.SCCNodes) in deriveAttrsInPostOrder()
1878 auto AARGetter = [&](Function &F) -> AAResults & { in run()
1882 SmallVector<Function *, 8> Functions; in run()
1897 for (Function *Changed : ChangedFunctions) { in run()
1915 PA.preserveSet<AllAnalysesOn<Function>>(); in run()
1929 SmallVector<Function *, 8> Functions; in runImpl()
1937 static bool addNoRecurseAttrsTopDown(Function &F) { in addNoRecurseAttrsTopDown()
1978 SmallVector<Function *, 16> Worklist; in deduceFunctionAttributeInRPO()
1984 Function &F = SCC.begin()->getFunction(); in deduceFunctionAttributeInRPO()