LLVM: include/llvm/ProfileData/MemProfSummary.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13#ifndef LLVM_PROFILEDATA_MEMPROFSUMMARY_H
14#define LLVM_PROFILEDATA_MEMPROFSUMMARY_H
15
18
19namespace llvm {
21
23private:
24
25
26
27
28
29
30 static constexpr unsigned NumSummaryFields = 6;
31
32 const uint64_t NumContexts, NumColdContexts, NumHotContexts;
33 const uint64_t MaxColdTotalSize, MaxWarmTotalSize, MaxHotTotalSize;
34
35public:
39 : NumContexts(NumContexts), NumColdContexts(NumColdContexts),
40 NumHotContexts(NumHotContexts), MaxColdTotalSize(MaxColdTotalSize),
41 MaxWarmTotalSize(MaxWarmTotalSize), MaxHotTotalSize(MaxHotTotalSize) {}
42
51
53
54 LLVM_ABI static std::unique_ptr
56};
57
58}
59}
60
61#endif
uint64_t getMaxColdTotalSize() const
Definition MemProfSummary.h:47
LLVM_ABI void printSummaryYaml(raw_ostream &OS) const
MemProfSummary(uint64_t NumContexts, uint64_t NumColdContexts, uint64_t NumHotContexts, uint64_t MaxColdTotalSize, uint64_t MaxWarmTotalSize, uint64_t MaxHotTotalSize)
Definition MemProfSummary.h:36
uint64_t getNumHotContexts() const
Definition MemProfSummary.h:46
uint64_t getMaxHotTotalSize() const
Definition MemProfSummary.h:49
uint64_t getNumColdContexts() const
Definition MemProfSummary.h:45
uint64_t getMaxWarmTotalSize() const
Definition MemProfSummary.h:48
LLVM_ABI void write(ProfOStream &OS) const
Write to indexed MemProf profile.
static LLVM_ABI std::unique_ptr< MemProfSummary > deserialize(const unsigned char *&)
Read from indexed MemProf profile.
uint64_t getNumContexts() const
Definition MemProfSummary.h:44
static constexpr unsigned getNumSummaryFields()
Definition MemProfSummary.h:43
This class implements an extremely fast bulk output stream that can only output to a stream.
This is an optimization pass for GlobalISel generic memory operations.