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.