Home
last modified time | relevance | path

Searched refs:FunctionSummary (Results 1 – 25 of 28) sorted by relevance

12

/llvm-project/llvm/include/llvm/IR/
H A DModuleSummaryIndex.h321 // summaries in the same FunctionSummary have the same number of entries).
409 // summaries in the same FunctionSummary have the same number of entries).
561 /// are listed in the derived FunctionSummary object.
720 class FunctionSummary : public GlobalValueSummary {
872 /// Create an empty FunctionSummary (with specified call edges).
874 static FunctionSummary
875 makeDummyFunctionSummary(SmallVectorImpl<FunctionSummary::EdgeTy> &&Edges) {
876 return FunctionSummary(
877 FunctionSummary::GVFlags(
882 /*NumInsts=*/0, FunctionSummary
[all...]
H A DModuleSummaryIndexYAML.h145 // Fields for FunctionSummary
148 std::vector<FunctionSummary::VFuncId> TypeTestAssumeVCalls = {};
149 std::vector<FunctionSummary::VFuncId> TypeCheckedLoadVCalls = {};
150 std::vector<FunctionSummary::ConstVCall> TypeTestAssumeConstVCalls = {};
151 std::vector<FunctionSummary::ConstVCall> TypeCheckedLoadConstVCalls = {};
160 template <> struct MappingTraits<FunctionSummary::VFuncId> {
161 static void mapping(IO &io, FunctionSummary::VFuncId& id) {
167 template <> struct MappingTraits<FunctionSummary::ConstVCall> {
168 static void mapping(IO &io, FunctionSummary::ConstVCall& id) {
177 LLVM_YAML_IS_SEQUENCE_VECTOR(FunctionSummary
[all...]
/llvm-project/llvm/lib/Analysis/
H A DModuleSummaryAnalysis.cpp67 FunctionSummary::ForceSummaryHotnessType ForceSummaryEdgesCold =
68 FunctionSummary::FSHT_None;
71 static cl::opt<FunctionSummary::ForceSummaryHotnessType, true> FSEC(
74 cl::values(clEnumValN(FunctionSummary::FSHT_None, "none", "None."),
75 clEnumValN(FunctionSummary::FSHT_AllNonCritical,
77 clEnumValN(FunctionSummary::FSHT_All, "all", "All edges.")));
185 SetVector<FunctionSummary::VFuncId, std::vector<FunctionSummary::VFuncId>> in addVCallToSet()
187 SetVector<FunctionSummary::ConstVCall, in addVCallToSet()
188 std::vector<FunctionSummary in addVCallToSet()
[all...]
H A DStackSafetyAnalysis.cpp724 FunctionSummary *findCalleeFunctionSummary(ValueInfo VI, StringRef ModuleId) { in findCalleeFunctionSummary()
735 if (!isa<FunctionSummary>(GVS->getBaseObject())) in findCalleeFunctionSummary()
766 if (FunctionSummary *FS = dyn_cast<FunctionSummary>(S)) in findCalleeFunctionSummary()
794 const ConstantRange *findParamAccess(const FunctionSummary &FS, in findParamAccess()
820 FunctionSummary *FS = in resolveAllCalls()
940 std::vector<FunctionSummary::ParamAccess>
943 // into FunctionSummary format. in getParamAccesses()
944 std::vector<FunctionSummary::ParamAccess> ParamAccesses; in getParamAccesses()
954 FunctionSummary in getParamAccesses()
[all...]
/llvm-project/llvm/lib/LTO/
H A DSummaryBasedOptimizations.cpp
/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/
H A DFunctionSummary.h33 class FunctionSummary {
51 FunctionSummary() in FunctionSummary() function
56 using MapTy = llvm::DenseMap<const Decl *, FunctionSummary>;
65 using KVPair = std::pair<const Decl *, FunctionSummary>; in findOrInsertSummary()
67 I = Map.insert(KVPair(D, FunctionSummary())).first; in findOrInsertSummary()
/llvm-project/llvm/lib/IR/
H A DModuleSummaryIndex.cpp37 constexpr uint32_t FunctionSummary::ParamAccess::RangeWidth;
39 FunctionSummary FunctionSummary::ExternalNode =
40 FunctionSummary::makeDummyFunctionSummary(
41 SmallVector<FunctionSummary::EdgeTy, 0>());
78 std::pair<unsigned, unsigned> FunctionSummary::specialRefCounts() const { in specialRefCounts()
166 auto *Summary = dyn_cast_or_null<FunctionSummary>(GlobSummary.get()); in collectDefinedFunctionsForModule()
214 assert(VI.getAccessSpecifier() == 0 || isa<FunctionSummary>(S)); in propagateAttributesToRefs()
385 FunctionSummary *F = nullptr;
387 F = cast<FunctionSummary>(
[all...]
H A DAsmWriter.cpp2808 void printFunctionSummary(const FunctionSummary *FS); in AssemblyWriter()
2814 void printTypeIdInfo(const FunctionSummary::TypeIdInfo &TIDInfo); in AssemblyWriter()
2815 void printVFuncId(const FunctionSummary::VFuncId VFId); in AssemblyWriter()
2817 printNonConstVCalls(const std::vector<FunctionSummary::VFuncId> &VCallList,
2820 printConstVCalls(const std::vector<FunctionSummary::ConstVCall> &VCallList, in writeOperand()
3385 void AssemblyWriter::printFunctionSummary(const FunctionSummary *FS) { in printFunctionSummary()
3515 const FunctionSummary::TypeIdInfo &TIDInfo) { in printTypeIdInfo()
3560 void AssemblyWriter::printVFuncId(const FunctionSummary::VFuncId VFId) { in printConstVCalls()
3583 const std::vector<FunctionSummary::VFuncId> &VCallList, const char *Tag) { in printSummary()
3594 const std::vector<FunctionSummary in printSummary()
[all...]
/llvm-project/llvm/unittests/IR/
H A DModuleSummaryIndexTest.cpp39 cast<FunctionSummary>(Index->getGlobalValueSummary(/*guid=*/25)); in TEST()
44 cast<FunctionSummary>(Index->getGlobalValueSummary(/*guid=*/23)); in TEST()
/llvm-project/llvm/lib/Transforms/IPO/
H A DFunctionImport.cpp238 auto *Summary = dyn_cast<FunctionSummary>(GVSummary->getBaseObject()); in qualifyCalleeCandidates()
307 cast<FunctionSummary>(QualifiedValue.second->getBaseObject()); in selectCallee()
332 using EdgeInfo = std::tuple<const FunctionSummary *, unsigned /* Threshold */>; in shouldImportGlobal()
834 const FunctionSummary &Summary, const ModuleSummaryIndex &Index, in computeImportForFunction()
888 const FunctionSummary *ResolvedCalleeSummary = nullptr; in computeImportForFunction()
903 ResolvedCalleeSummary = cast<FunctionSummary>(CalleeSummary); in computeImportForFunction()
973 ResolvedCalleeSummary = cast<FunctionSummary>(CalleeSummary); in computeImportForModule()
1040 dyn_cast<FunctionSummary>(GVSummary.second->getBaseObject()); in checkVariableImport()
1056 if (auto *FS = dyn_cast<FunctionSummary>(Summary)) in checkVariableImport()
1073 FunctionSummary *F in ComputeCrossModuleImport()
[all...]
H A DFunctionAttrs.cpp303 static FunctionSummary *calculatePrevailingSummary( in calculatePrevailingSummary()
305 DenseMap<ValueInfo, FunctionSummary *> &CachedPrevailingSummary, in calculatePrevailingSummary()
323 /// - Non-existent FunctionSummary for Aliasee. This presents a hole in our in calculatePrevailingSummary()
353 FunctionSummary *Local = nullptr; in calculatePrevailingSummary()
354 FunctionSummary *Prevailing = nullptr; in calculatePrevailingSummary()
360 FunctionSummary *FS = dyn_cast<FunctionSummary>(GVS->getBaseObject()); in calculatePrevailingSummary()
415 DenseMap<ValueInfo, FunctionSummary *> CachedPrevailingSummary; in thinLTOPropagateFunctionAttrs()
420 FunctionSummary::FFlags InferredFlags; in thinLTOPropagateFunctionAttrs()
425 FunctionSummary *CallerSummar in thinLTOPropagateFunctionAttrs()
[all...]
H A DWholeProgramDevirt.cpp425 if (auto *FS = dyn_cast<FunctionSummary>(Summary->getBaseObject())) { in emitRemark()
511 std::vector<FunctionSummary *> SummaryTypeCheckedLoadUsers;
512 std::vector<FunctionSummary *> SummaryTypeTestAssumeUsers;
519 void addSummaryTypeCheckedLoadUser(FunctionSummary *FS) { in findCallSiteInfo()
524 void addSummaryTypeTestAssumeUser(FunctionSummary *FS) { in findCallSiteInfo()
2356 auto *FS = dyn_cast<FunctionSummary>(S.get()); in run()
2360 for (FunctionSummary::VFuncId VF : FS->type_test_assume_vcalls()) { in run()
2365 for (FunctionSummary::VFuncId VF : FS->type_checked_load_vcalls()) { in run()
2370 for (const FunctionSummary::ConstVCall &VC : in run()
2378 for (const FunctionSummary in run()
[all...]
H A DMemProfContextDisambiguation.cpp847 : public CallsiteContextGraph<IndexCallsiteContextGraph, FunctionSummary, in getNodeForInst()
868 friend CallsiteContextGraph<IndexCallsiteContextGraph, FunctionSummary, in getNodeForStackId()
872 const FunctionSummary *getCalleeFunc(IndexCall &Call);
874 IndexCall &Call, const FunctionSummary *Func,
875 const FunctionSummary *CallerFunc, in addOrUpdateCallerEdge()
876 std::vector<std::pair<IndexCall, FunctionSummary *>> &FoundCalleeChain); in addOrUpdateCallerEdge()
880 std::vector<std::pair<IndexCall, FunctionSummary *>> &FoundCalleeChain, in addOrUpdateCallerEdge()
887 CallsiteContextGraph<IndexCallsiteContextGraph, FunctionSummary, in addOrUpdateCallerEdge()
893 std::string getLabel(const FunctionSummary *Func, const IndexCall &Call, in removeNoneTypeCalleeEdges()
898 std::map<const FunctionSummary *, ValueInf in removeNoneTypeCalleeEdges()
[all...]
/llvm-project/llvm/include/llvm/AsmParser/
H A DLLParser.h400 bool parseOptionalFFlags(FunctionSummary::FFlags &FFlags);
401 bool parseOptionalCalls(SmallVectorImpl<FunctionSummary::EdgeTy> &Calls);
403 bool parseOptionalTypeIdInfo(FunctionSummary::TypeIdInfo &TypeIdInfo);
406 std::vector<FunctionSummary::VFuncId> &VFuncIdList);
409 std::vector<FunctionSummary::ConstVCall> &ConstVCallList);
412 bool parseConstVCall(FunctionSummary::ConstVCall &ConstVCall,
414 bool parseVFuncId(FunctionSummary::VFuncId &VFuncId,
418 std::vector<FunctionSummary::ParamAccess> &Params);
421 bool parseParamAccess(FunctionSummary::ParamAccess &Param,
423 bool parseParamAccessCall(FunctionSummary
[all...]
/llvm-project/clang/lib/StaticAnalyzer/Core/
H A DCMakeLists.txt34 FunctionSummary.cpp
/llvm-project/llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Core/
H A DBUILD.gn43 "FunctionSummary.cpp",
/llvm-project/llvm/include/llvm/Analysis/
H A DStackSafetyAnalysis.h54 std::vector<FunctionSummary::ParamAccess>
/llvm-project/llvm/lib/ExecutionEngine/RuntimeDyld/
H A DJITSymbol.cpp62 if (isa<FunctionSummary>(S)) in fromSummary()
/llvm-project/llvm/examples/OrcV2Examples/LLJITWithThinLTOSummaries/
H A DLLJITWithThinLTOSummaries.cpp148 if (!isa<FunctionSummary>(S)) in getMainModulePath()
/llvm-project/llvm/lib/Transforms/Utils/
H A DFunctionImportUtils.cpp
/llvm-project/llvm/lib/Bitcode/Writer/
H A DBitcodeWriter.cpp102 extern FunctionSummary::ForceSummaryHotnessType ForceSummaryEdgesCold;
209 if (auto FS = dyn_cast<FunctionSummary>(Summary.get())) { in ModuleBitcodeWriterBase()
502 auto *FS = dyn_cast<FunctionSummary>(I.second); in IndexBitcodeWriter()
1250 static uint64_t getEncodedFFlags(FunctionSummary::FFlags Flags) { in getEncodedGVarFlags()
4048 FunctionSummary *FS, in writeFunctionTypeMetadataRecords()
4056 ArrayRef<FunctionSummary::VFuncId> VFs) { in writeFunctionTypeMetadataRecords()
4073 ArrayRef<FunctionSummary::ConstVCall> VCs) { in getReferencedTypeIds()
4089 Range = Range.sextOrTrunc(FunctionSummary::ParamAccess::RangeWidth); in writeWholeProgramDevirtResolutionByArg()
4123 getReferencedTypeIds(FunctionSummary *FS, in writeTypeIdSummaryRecord()
4130 [&](ArrayRef<FunctionSummary in writeTypeIdSummaryRecord()
[all...]
/llvm-project/llvm/unittests/Analysis/
H A DMemoryProfileInfoTest.cpp736 cast<FunctionSummary>(Index->getGlobalValueSummary(/*guid=*/25));
758 cast<FunctionSummary>(Index->getGlobalValueSummary(/*guid=*/23));
/llvm-project/llvm/lib/AsmParser/
H A DLLParser.cpp9398 /// Summary ::= '(' (FunctionSummary | VariableSummary | AliasSummary) ')' in parseFunctionSummary()
9472 /// FunctionSummary in parseVariableSummary()
9490 SmallVector<FunctionSummary::EdgeTy, 0> Calls; in parseVariableSummary()
9491 FunctionSummary::TypeIdInfo TypeIdInfo; in parseVariableSummary()
9492 std::vector<FunctionSummary::ParamAccess> ParamAccesses; in parseVariableSummary()
9497 FunctionSummary::FFlags FFlags = {};
9546 auto FS = std::make_unique<FunctionSummary>(
9692 bool LLParser::parseOptionalFFlags(FunctionSummary::FFlags &FFlags) { in parseOptionalCalls()
9780 SmallVectorImpl<FunctionSummary::EdgeTy> &Calls) { in parseOptionalVTableFuncs()
9836 FunctionSummary in parseParamAccessOffset()
[all...]
/llvm-project/llvm/lib/Bitcode/Reader/
H A DBitcodeReader.cpp1010 SmallVector<FunctionSummary::EdgeTy, 0>
1018 std::vector<FunctionSummary::ParamAccess> in errorToErrorCodeAndEmitErrors()
1153 static FunctionSummary::FFlags getDecodedFFlags(uint64_t RawFlags) { in getDecodedGVSummaryFlags()
1154 FunctionSummary::FFlags Flags; in getDecodedGVSummaryFlags()
7462 SmallVector<FunctionSummary::EdgeTy, 0> in parseParamAccesses()
7466 SmallVector<FunctionSummary::EdgeTy, 0> Ret; in parseParamAccesses()
7488 Ret.push_back(FunctionSummary::EdgeTy{ in parseTypeIdCompatibleVtableInfo()
7544 std::vector<FunctionSummary::ParamAccess> in parseEntireSummary()
7547 APInt Lower(FunctionSummary::ParamAccess::RangeWidth, in parseEntireSummary()
7550 APInt Upper(FunctionSummary in parseEntireSummary()
[all...]
/llvm-project/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/
H A DRetainCountChecker.cpp1344 const RetainSummary *FunctionSummary = SmrMgr.getSummary(*C); in checkBeginFunction() local
1345 ArgEffects CalleeSideArgEffects = FunctionSummary->getArgEffects(); in checkBeginFunction()

12