LLVM: include/llvm/DebugInfo/LogicalView/Core/LVCompare.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13
14#ifndef LLVM_DEBUGINFO_LOGICALVIEW_CORE_LVCOMPARE_H
15#define LLVM_DEBUGINFO_LOGICALVIEW_CORE_LVCOMPARE_H
16
19
20namespace llvm {
22
24
25
26using LVPassEntry = std::tuple<LVReader *, LVElement *, LVComparePass>;
28
32
33
34
35
36
37
39
40
41
42
44
45 bool FirstMissing = true;
46 bool PrintLines = false;
47 bool PrintScopes = false;
48 bool PrintSymbols = false;
49 bool PrintTypes = false;
50
51 static void setInstance(LVCompare *Compare);
52
53 void printCurrentStack();
54 void printSummary() const;
55
56public:
62
64
65
66 void push(LVScope *Scope) { ScopeStack.push_back(Scope); }
67 void pop() { ScopeStack.pop_back(); }
68
69
71
73 PassTable.emplace_back(Reader, Element, Pass);
74 }
76
79
80#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
82#endif
83};
84
86
87}
88}
89
90#endif
Lightweight error class with error context and mandatory checking.
Pass interface - Implemented by all 'passes'.
Definition LVCompare.h:29
LLVM_ABI void print(raw_ostream &OS) const
LLVM_ABI void printItem(LVElement *Element, LVComparePass Pass)
LVCompare(const LVCompare &)=delete
static LLVM_ABI LVCompare & getInstance()
void pop()
Definition LVCompare.h:67
LVCompare & operator=(const LVCompare &)=delete
const LVPassTable & getPassTable() const &
Definition LVCompare.h:75
void push(LVScope *Scope)
Definition LVCompare.h:66
LLVM_ABI Error execute(LVReader *ReferenceReader, LVReader *TargetReader)
void dump() const
Definition LVCompare.h:81
void addPassEntry(LVReader *Reader, LVElement *Element, LVComparePass Pass)
Definition LVCompare.h:72
The logical reader owns of all the logical elements created during the debug information parsing.
This class implements an extremely fast bulk output stream that can only output to a stream.
Definition LVCompare.h:21
std::tuple< LVReader *, LVElement *, LVComparePass > LVPassEntry
Definition LVCompare.h:26
SmallVector< LVScope *, 8 > LVScopes
std::vector< LVPassEntry > LVPassTable
Definition LVCompare.h:27
LVCompare & getComparator()
Definition LVCompare.h:85
This is an optimization pass for GlobalISel generic memory operations.
LLVM_ABI raw_ostream & dbgs()
dbgs() - This returns a reference to a raw_ostream for debugging messages.