LLVM: include/llvm/DebugInfo/CodeView/StringsAndChecksums.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9#ifndef LLVM_DEBUGINFO_CODEVIEW_STRINGSANDCHECKSUMS_H
10#define LLVM_DEBUGINFO_CODEVIEW_STRINGSANDCHECKSUMS_H
11
15#include
16
17namespace llvm {
23
25public:
26
28
29
32
33
36
39
43
44 template void initialize(T &&FragmentRange) {
46 if (Strings && Checksums)
47 return;
49 initializeChecksums(R);
50 continue;
51 }
53
54
55
56
57
58
59
60
61
62 initializeStrings(R);
63 continue;
64 }
65 }
66 }
67
70
71 bool hasStrings() const { return Strings != nullptr; }
72 bool hasChecksums() const { return Checksums != nullptr; }
73
74private:
77
78 std::shared_ptr OwnedStrings;
79 std::shared_ptr OwnedChecksums;
80
83};
84
86public:
87 using StringsPtr = std::shared_ptr;
88 using ChecksumsPtr = std::shared_ptr;
89
90
92
95
98
99 bool hasStrings() const { return Strings != nullptr; }
100 bool hasChecksums() const { return Checksums != nullptr; }
101
102private:
105};
106
107}
108}
109
110#endif
Represents a read-only view of a CodeView string table.
Represents a read-write view of a CodeView string table.
LLVM_ABI void setStrings(const DebugStringTableSubsectionRef &Strings)
LLVM_ABI StringsAndChecksumsRef()
LLVM_ABI void setChecksums(const DebugChecksumsSubsectionRef &CS)
bool hasStrings() const
Definition StringsAndChecksums.h:71
const DebugStringTableSubsectionRef & strings() const
Definition StringsAndChecksums.h:68
bool hasChecksums() const
Definition StringsAndChecksums.h:72
LLVM_ABI void resetStrings()
void initialize(T &&FragmentRange)
Definition StringsAndChecksums.h:44
const DebugChecksumsSubsectionRef & checksums() const
Definition StringsAndChecksums.h:69
LLVM_ABI void resetChecksums()
std::shared_ptr< DebugStringTableSubsection > StringsPtr
Definition StringsAndChecksums.h:87
bool hasStrings() const
Definition StringsAndChecksums.h:99
void setStrings(const StringsPtr &SP)
Definition StringsAndChecksums.h:93
bool hasChecksums() const
Definition StringsAndChecksums.h:100
std::shared_ptr< DebugChecksumsSubsection > ChecksumsPtr
Definition StringsAndChecksums.h:88
const StringsPtr & strings() const
Definition StringsAndChecksums.h:96
void setChecksums(const ChecksumsPtr &CP)
Definition StringsAndChecksums.h:94
const ChecksumsPtr & checksums() const
Definition StringsAndChecksums.h:97
StringsAndChecksums()=default
This is an optimization pass for GlobalISel generic memory operations.