LLVM: include/llvm/MC/MCDisassembler/MCSymbolizer.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15#ifndef LLVM_MC_MCDISASSEMBLER_MCSYMBOLIZER_H
16#define LLVM_MC_MCDISASSEMBLER_MCSYMBOLIZER_H
17
21#include
22#include
23#include
24
25namespace llvm {
26
30
31
32
33
34
35
36
37
38
39
41protected:
44
45public:
46
50
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
74
75
76
77
81
82
83
84
85
86
87
88
89
90
92};
93
94}
95
96#endif
ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory),...
Context object for machine code objects.
Instances of this class represent a single low-level machine instruction.
MCSymbolizer(MCContext &Ctx, std::unique_ptr< MCRelocationInfo > RelInfo)
Construct an MCSymbolizer, taking ownership of RelInfo.
Definition MCSymbolizer.h:47
std::unique_ptr< MCRelocationInfo > RelInfo
Definition MCSymbolizer.h:43
MCSymbolizer & operator=(const MCSymbolizer &)=delete
virtual void tryAddingPcLoadReferenceComment(raw_ostream &cStream, int64_t Value, uint64_t Address)=0
Try to add a comment on the PC-relative load.
MCSymbolizer(const MCSymbolizer &)=delete
virtual bool tryAddingSymbolicOperand(MCInst &Inst, raw_ostream &cStream, int64_t Value, uint64_t Address, bool IsBranch, uint64_t Offset, uint64_t OpSize, uint64_t InstSize)=0
Try to add a symbolic operand instead of Value to the MCInst.
MCContext & Ctx
Definition MCSymbolizer.h:42
virtual ArrayRef< uint64_t > getReferencedAddresses() const
Get the MCSymbolizer's list of addresses that were referenced by symbolizable operands but not resolv...
Definition MCSymbolizer.h:91
LLVM Value Representation.
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.
OutputIt move(R &&Range, OutputIt Out)
Provide wrappers to std::move which take ranges instead of having to pass begin/end explicitly.
Implement std::hash so that hash_code can be used in STL containers.