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.