14#ifndef LLVM_DEBUGINFO_LOGICALVIEW_CORE_LVCOMPARE_H
15#define LLVM_DEBUGINFO_LOGICALVIEW_CORE_LVCOMPARE_H
21namespace logicalview {
26using LVPassEntry = std::tuple<LVReader *, LVElement *, LVComparePass>;
45 bool FirstMissing =
true;
46 bool PrintLines =
false;
47 bool PrintScopes =
false;
48 bool PrintSymbols =
false;
49 bool PrintTypes =
false;
51 static void setInstance(
LVCompare *Compare);
53 void printCurrentStack();
54 void printSummary()
const;
73 PassTable.emplace_back(Reader, Element,
Pass);
80#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
Lightweight error class with error context and mandatory checking.
Pass interface - Implemented by all 'passes'.
void push_back(const T &Elt)
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()
LVCompare & operator=(const LVCompare &)=delete
const LVPassTable & getPassTable() const &
void push(LVScope *Scope)
LLVM_ABI Error execute(LVReader *ReferenceReader, LVReader *TargetReader)
void addPassEntry(LVReader *Reader, LVElement *Element, LVComparePass Pass)
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.
std::tuple< LVReader *, LVElement *, LVComparePass > LVPassEntry
std::vector< LVPassEntry > LVPassTable
LVCompare & getComparator()
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.