Lines Matching +full:- +full:- +full:pgo
1 //===-- InstrProf.h - Instrumented profiling format support -----*- C++ -*-===//
8 //===----------------------------------------------------------------------===//
10 // Instrumentation-based profiling data is generated by instrumented
11 // binaries through library functions in compiler-rt, and read by the clang
12 // frontend to feed PGO.
14 //===----------------------------------------------------------------------===//
54 /// Return the name of the data section containing per-function control
91 /// Return the name prefix of variables containing per-function control data.
108 /// of all function's PGO names.
121 /// of PGO name vars referenced by the coverage mapping. The owning
128 /// Return the name of function that registers all the per-function control
137 /// Return the name of the runtime interface that registers per-function control
143 /// Return the name of the runtime interface that registers the PGO name strings.
173 /// Return the marker used to separate PGO names during serialization.
192 /// name in PGO instrumentation. \c FuncName is the name of the function
197 /// Create and return the global variable for function name used in PGO
202 /// Create and return the global variable for function name used in PGO
209 /// Return the initializer in string of the PGO name var \c NameVar.
212 /// Given a PGO function name, remove the filename prefix and return
217 /// Given a vector of strings (function PGO names) \c NameStrs, the
221 /// the second field is the length of the zlib-compressed string.
229 /// is vector of PGO function name variables that are referenced.
233 /// \c NameStrings is a string composed of one of more sub-strings encoded in
402 /// A symbol table used for function PGO name look-up with keys
404 /// PGO name or name's md5hash are used in retrieving the profile
406 /// on how PGO name is formed.
431 /// contains function PGO names. When section may contain raw
440 /// \c NameStrings is a string composed of one of more sub-strings
444 /// A wrapper interface to populate the PGO symtab with functions
463 IndexedInstrProf::ComputeHash(FuncName), Ins.first->getKey())); in addFuncName()
471 /// Return function's PGO name from the function name's symbol
475 /// Return function's PGO name from the name's md5 hash value.
519 if (Result != MD5NameMap.end() && Result->first == FuncMD5Hash) in getFuncName()
520 return Result->second; in getFuncName()
529 if (Result != MD5FuncMap.end() && Result->first == FuncMD5Hash) in getFunction()
530 return Result->second; in getFunction()
583 /// Return the number of value profile kinds with non-zero number
655 ->getValueSitesForKind(ValueKind)); in getValueSitesForKind()
797 // data file in indexed-format.
893 // Version 2: Added value profile data section. Per-function control data
895 // Version 3: Compressed name section support. Function PGO name reference
910 // Per-function profile data header/control structure.
912 // compiler-rt/lib/profile/InstrProfiling.h.
922 // compiler-rt/lib/profile/InstrProfilingFile.c and