LLVM: include/llvm/Object/TapiFile.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13#ifndef LLVM_OBJECT_TAPIFILE_H
14#define LLVM_OBJECT_TAPIFILE_H
15
25
26namespace llvm {
27
29
31
33public:
37
39
41
43
45
47
49
51
52 static bool classof(const Binary *v) { return v->isTapiFile(); }
53
55
56private:
57 struct Symbol {
62
65 : Prefix(Prefix), Name(Name), Flags(Flags), Type(Type) {}
66 };
67
68 std::vector Symbols;
69 MachO::Architecture Arch;
70 MachO::FileType FileKind;
71};
72
73}
74}
75
76#endif
static std::unique_ptr< PDBSymbol > getSymbolType(const PDBSymbol &Symbol)
Lightweight error class with error context and mandatory checking.
Tagged union holding either a T or a Error.
Defines the interface file.
StringRef - Represent a constant reference to a string, i.e.
The instances of the Type class are immutable: once they are created, they are never changed.
SymbolicFile(unsigned int Type, MemoryBufferRef Source)
static bool classof(const Binary *v)
Definition TapiFile.h:52
void moveSymbolNext(DataRefImpl &DRI) const override
Expected< uint32_t > getSymbolFlags(DataRefImpl DRI) const override
basic_symbol_iterator symbol_end() const override
TapiFile(MemoryBufferRef Source, const MachO::InterfaceFile &Interface, MachO::Architecture Arch)
Error printSymbolName(raw_ostream &OS, DataRefImpl DRI) const override
bool is64Bit() const override
Definition TapiFile.h:54
basic_symbol_iterator symbol_begin() const override
bool hasSegmentInfo()
Definition TapiFile.h:50
This class implements an extremely fast bulk output stream that can only output to a stream.
@ TBD_V5
Text-based stub file (.tbd) version 5.0.
LLVM_ABI bool is64Bit(Architecture)
Check if architecture is 64 bit.
Architecture
Defines the architecture slices that are supported by Text-based Stub files.
content_iterator< BasicSymbolRef > basic_symbol_iterator
This is an optimization pass for GlobalISel generic memory operations.