Lines Matching full:profile
1 //===- Profile.cpp - XRay Profile Abstraction -----------------------------===//
9 // Defines the XRay Profile class representing the latency profile generated by
13 #include "llvm/XRay/Profile.h"
25 Profile::Profile(const Profile &O) { in Profile() function in llvm::xray::Profile
27 // Profile being initialized, through the Block instances we see. in Profile()
37 Profile &Profile::operator=(const Profile &O) { in operator =()
38 Profile P = O; in operator =()
78 static Expected<std::vector<Profile::FuncID>> readPath(DataExtractor &Extractor, in readPath()
81 std::vector<Profile::FuncID> Path; in readPath()
96 static Expected<Profile::Data> readData(DataExtractor &Extractor, in readData()
101 Profile::Data D; in readData()
121 Error Profile::addBlock(Block &&B) { in addBlock()
131 Expected<std::vector<Profile::FuncID>> Profile::expandPath(PathID P) const { in expandPath()
137 std::vector<Profile::FuncID> Path; in expandPath()
143 Profile::PathID Profile::internPath(ArrayRef<FuncID> P) { in internPath()
193 Profile mergeProfilesByThread(const Profile &L, const Profile &R) { in mergeProfilesByThread()
194 Profile Merged; in mergeProfilesByThread()
195 using PathDataMap = DenseMap<Profile::PathID, Profile::Data>; in mergeProfilesByThread()
197 using PathDataVector = decltype(Profile::Block::PathData); in mergeProfilesByThread()
198 using ThreadProfileIndexMap = DenseMap<Profile::ThreadID, PathDataMapPtr>; in mergeProfilesByThread()
232 Profile mergeProfilesByStack(const Profile &L, const Profile &R) { in mergeProfilesByStack()
233 Profile Merged; in mergeProfilesByStack()
234 using PathDataMap = DenseMap<Profile::PathID, Profile::Data>; in mergeProfilesByStack()
236 using PathDataVector = decltype(Profile::Block::PathData); in mergeProfilesByStack()
262 Expected<Profile> loadProfile(StringRef Filename) { in loadProfile()
279 Twine("Cannot mmap profile '") + Filename + "'", EC); in loadProfile()
282 Profile P; in loadProfile()
309 P.addBlock(Profile::Block{Profile::ThreadID{Header.Thread}, in loadProfile()
321 Profile::FuncID FuncId;
326 Expected<Profile> profileFromTrace(const Trace &T) { in profileFromTrace()
327 Profile P; in profileFromTrace()
333 DenseMap<Profile::ThreadID, std::vector<StackEntry>> ThreadStacks; in profileFromTrace()
334 DenseMap<Profile::ThreadID, DenseMap<Profile::PathID, Profile::Data>> in profileFromTrace()
354 // intern the path into the Profile. in profileFromTrace()
358 SmallVector<Profile::FuncID, 16> Path; in profileFromTrace()
387 // the Profile. in profileFromTrace()
393 std::vector<std::pair<Profile::PathID, Profile::Data>>( in profileFromTrace()