LLVM: include/llvm/MC/MCSectionGOFF.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15#ifndef LLVM_MC_MCSECTIONGOFF_H

16#define LLVM_MC_MCSECTIONGOFF_H

17

24

25namespace llvm {

26

28

30

31 MCSectionGOFF *Parent;

32

33

34 union {

38 };

39

40

42

43

44 unsigned IsBSS : 1;

45

46

47

48

49 unsigned RequiresNonZeroLength : 1;

50

51

52 mutable unsigned Emitted : 1;

53

57

62 IsBSS(K.isBSS()), RequiresNonZeroLength(0), Emitted(0) {}

63

66 : MCSection(Name, K.isText(), IsVirtual, nullptr), Parent(Parent),

67 EDAttributes(EDAttributes), SymbolType(GOFF::ESD_ST_ElementDefinition),

68 IsBSS(K.isBSS()), RequiresNonZeroLength(0), Emitted(0) {}

69

70 MCSectionGOFF(StringRef Name, SectionKind K, bool IsVirtual,

71 GOFF::PRAttr PRAttributes, MCSectionGOFF *Parent)

72 : MCSection(Name, K.isText(), IsVirtual, nullptr), Parent(Parent),

73 PRAttributes(PRAttributes), SymbolType(GOFF::ESD_ST_PartReference),

74 IsBSS(K.isBSS()), RequiresNonZeroLength(0), Emitted(0) {}

75

76public:

77

78 MCSectionGOFF *getParent() const { return Parent; }

79

80

81 bool isBSS() const { return IsBSS; }

82

83

85

89

90

103

104

110 return getParent()->getEDAttributes().TextStyle;

111

113 }

114

116

118};

119}

120

121#endif

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

static const Function * getParent(const Value *V)

Base class for the full range of assembler expressions which are needed for parsing.

Definition MCSectionGOFF.h:29

GOFF::SDAttr getSDAttributes() const

Definition MCSectionGOFF.h:91

friend class MCAsmInfoGOFF

Definition MCSectionGOFF.h:55

GOFF::ESDSymbolType getSymbolType() const

Definition MCSectionGOFF.h:84

GOFF::SDAttr SDAttributes

Definition MCSectionGOFF.h:35

bool isPR() const

Definition MCSectionGOFF.h:88

GOFF::EDAttr getEDAttributes() const

Definition MCSectionGOFF.h:95

friend class MCContext

Definition MCSectionGOFF.h:54

GOFF::PRAttr getPRAttributes() const

Definition MCSectionGOFF.h:99

bool requiresNonZeroLength() const

Definition MCSectionGOFF.h:115

friend class MCSymbolGOFF

Definition MCSectionGOFF.h:56

GOFF::PRAttr PRAttributes

Definition MCSectionGOFF.h:37

void setName(StringRef SectionName)

Definition MCSectionGOFF.h:117

bool isBSS() const

Definition MCSectionGOFF.h:81

GOFF::ESDTextStyle getTextStyle() const

Definition MCSectionGOFF.h:105

bool isSD() const

Definition MCSectionGOFF.h:86

bool isED() const

Definition MCSectionGOFF.h:87

GOFF::EDAttr EDAttributes

Definition MCSectionGOFF.h:36

MCSectionGOFF * getParent() const

Definition MCSectionGOFF.h:78

Instances of this class represent a uniqued identifier for a section in the current translation unit.

bool isBssSection() const

Check whether this section is "virtual", that is has no actual object file contents.

MCSection(StringRef Name, bool IsText, bool IsBss, MCSymbol *Begin)

SectionKind - This is a simple POD value that classifies the properties of a section.

StringRef - Represent a constant reference to a string, i.e.

@ ESD_ST_ElementDefinition

@ ESD_ST_SectionDefinition

This is an optimization pass for GlobalISel generic memory operations.