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.