LLVM: include/llvm/CodeGen/MachineModuleInfoImpls.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13
14#ifndef LLVM_CODEGEN_MACHINEMODULEINFOIMPLS_H
15#define LLVM_CODEGEN_MACHINEMODULEINFOIMPLS_H
16
20#include
21
22namespace llvm {
23
25
26
27
29
30
31
33
34
35
36
38
39
40
41
43
44 virtual void anchor();
45
46public:
48
50 assert(Sym && "Key cannot be null");
51 return GVStubs[Sym];
52 }
53
55 assert(Sym && "Key cannot be null");
56 return ThreadLocalGVStubs[Sym];
57 }
58
60 assert(Sym && "Key cannot be null");
61 return AuthPtrStubs[Sym];
62 }
63
64
69
73};
74
75
76
78
79
81
82
83
85
86
87
88 bool HasSignedPersonality = false;
89
90 virtual void anchor();
91
92public:
94
96 assert(Sym && "Key cannot be null");
97 return GVStubs[Sym];
98 }
99
101 assert(Sym && "Key cannot be null");
102 return AuthPtrStubs[Sym];
103 }
104
105
106
108
112
114};
115
116
117
119
120
122
123 virtual void anchor();
124
125public:
127
129 assert(Sym && "Key cannot be null");
130 return GVStubs[Sym];
131 }
132
133
134
136};
137
138
139
141 virtual void anchor();
142
143public:
145
147};
148
149}
150
151#endif
assert(UImm &&(UImm !=~static_cast< T >(0)) &&"Invalid immediate!")
This file defines the DenseMap class.
This file implements a set that has insertion order iteration characteristics.
Base class for the full range of assembler expressions which are needed for parsing.
MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...
StubValueTy & getGVStubEntry(MCSymbol *Sym)
Definition MachineModuleInfoImpls.h:128
SymbolListTy GetGVStubList()
Accessor methods to return the set of stubs in sorted order.
Definition MachineModuleInfoImpls.h:135
MachineModuleInfoCOFF(const MachineModuleInfo &)
Definition MachineModuleInfoImpls.h:126
MachineModuleInfoELF(const MachineModuleInfo &)
const MCExpr *& getAuthPtrStubEntry(MCSymbol *Sym)
Definition MachineModuleInfoImpls.h:100
ExprStubListTy getAuthGVStubList()
Definition MachineModuleInfoImpls.h:109
bool hasSignedPersonality() const
Definition MachineModuleInfoImpls.h:113
StubValueTy & getGVStubEntry(MCSymbol *Sym)
Definition MachineModuleInfoImpls.h:95
SymbolListTy GetGVStubList()
Accessor methods to return the set of stubs in sorted order.
Definition MachineModuleInfoImpls.h:107
This class can be derived from and used by targets to hold private target-specific information for ea...
std::vector< std::pair< MCSymbol *, StubValueTy > > SymbolListTy
static SymbolListTy getSortedStubs(DenseMap< MCSymbol *, StubValueTy > &)
Return the entries from a DenseMap in a deterministic sorted orer.
std::vector< std::pair< MCSymbol *, const MCExpr * > > ExprStubListTy
A variant of SymbolListTy where the stub is a generalized MCExpr.
PointerIntPair< MCSymbol *, 1, bool > StubValueTy
static ExprStubListTy getSortedExprStubs(DenseMap< MCSymbol *, const MCExpr * > &)
Return the entries from a DenseMap in a deterministic sorted orer.
SymbolListTy GetThreadLocalGVStubList()
Definition MachineModuleInfoImpls.h:66
const MCExpr *& getAuthPtrStubEntry(MCSymbol *Sym)
Definition MachineModuleInfoImpls.h:59
StubValueTy & getGVStubEntry(MCSymbol *Sym)
Definition MachineModuleInfoImpls.h:49
StubValueTy & getThreadLocalGVStubEntry(MCSymbol *Sym)
Definition MachineModuleInfoImpls.h:54
SymbolListTy GetGVStubList()
Accessor methods to return the set of stubs in sorted order.
Definition MachineModuleInfoImpls.h:65
ExprStubListTy getAuthGVStubList()
Definition MachineModuleInfoImpls.h:70
MachineModuleInfoMachO(const MachineModuleInfo &)
Definition MachineModuleInfoImpls.h:47
MachineModuleInfoWasm(const MachineModuleInfo &)
Definition MachineModuleInfoImpls.h:144
SetVector< StringRef > MachineSymbolsUsed
Definition MachineModuleInfoImpls.h:146
This class contains meta information specific to a module.
A vector that has set insertion semantics.
This is an optimization pass for GlobalISel generic memory operations.