LLVM: include/llvm/DWARFCFIChecker/DWARFCFIFunctionFrameStreamer.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13

14#ifndef LLVM_DWARFCFICHECKER_DWARFCFIFUNCTIONFRAMESTREAMER_H

15#define LLVM_DWARFCFICHECKER_DWARFCFIFUNCTIONFRAMESTREAMER_H

16

24#include

25#include

26

27namespace llvm {

28

29

30

31

32

33

35public:

37 std::unique_ptr Receiver)

39 assert(this->Receiver && "Receiver should not be null");

40 }

41

44

48

50 Align ByteAlignment) override {}

59

63

64private:

65

66

67

68

69

70

71 void updateReceiver(const std::optional &NewInst);

72

73private:

74

75

76

77

78

80

81

83

85

86 std::unique_ptr Receiver;

87};

88

89}

90

91#endif

assert(UImm &&(UImm !=~static_cast< T >(0)) &&"Invalid immediate!")

This file declares CFIFunctionFrameReceiver class.

This file defines the SmallVector class.

Functions, function parameters, and return types can have attributes to indicate how they should be t...

void emitRawTextImpl(StringRef String) override

EmitRawText - If this file is backed by an assembly streamer, this dumps the specified string in the ...

Definition DWARFCFIFunctionFrameStreamer.h:43

void emitSubsectionsViaSymbols() override

Emit a .subsection_via_symbols directive.

Definition DWARFCFIFunctionFrameStreamer.h:51

void emitCOFFSymbolStorageClass(int StorageClass) override

Emit the storage class of the symbol.

Definition DWARFCFIFunctionFrameStreamer.h:53

bool emitSymbolAttribute(MCSymbol *Symbol, MCSymbolAttr Attribute) override

Add the given Attribute to Symbol.

Definition DWARFCFIFunctionFrameStreamer.h:45

void emitCOFFSymbolType(int Type) override

Emit the type of the symbol.

Definition DWARFCFIFunctionFrameStreamer.h:54

CFIFunctionFrameStreamer(MCContext &Context, std::unique_ptr< CFIFunctionFrameReceiver > Receiver)

Definition DWARFCFIFunctionFrameStreamer.h:36

bool hasRawTextSupport() const override

Return true if this asm streamer supports emitting unformatted text to the .s file with EmitRawText.

Definition DWARFCFIFunctionFrameStreamer.h:42

void beginCOFFSymbolDef(const MCSymbol *Symbol) override

Start emitting COFF symbol definition.

Definition DWARFCFIFunctionFrameStreamer.h:52

void endCOFFSymbolDef() override

Marks the end of the symbol definition.

Definition DWARFCFIFunctionFrameStreamer.h:55

void emitXCOFFSymbolLinkageWithVisibility(MCSymbol *Symbol, MCSymbolAttr Linkage, MCSymbolAttr Visibility) override

Emit a symbol's linkage and visibility with a linkage directive for XCOFF.

Definition DWARFCFIFunctionFrameStreamer.h:56

void emitCommonSymbol(MCSymbol *Symbol, uint64_t Size, Align ByteAlignment) override

Emit a common symbol.

Definition DWARFCFIFunctionFrameStreamer.h:49

Context object for machine code objects.

Instances of this class represent a single low-level machine instruction.

MCStreamer(MCContext &Ctx)

Generic base class for all target subtargets.

MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...

This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.

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.

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.

This struct is a compact representation of a valid (non-zero power of two) alignment.