LLVM: include/llvm/CodeGen/PseudoSourceValue.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13#ifndef LLVM_CODEGEN_PSEUDOSOURCEVALUE_H

14#define LLVM_CODEGEN_PSEUDOSOURCEVALUE_H

15

17

18namespace llvm {

19

27

29

30

31

32

34public:

45

46private:

47 unsigned Kind;

51

54

55

56

57 virtual void printCustom(raw_ostream &O) const;

58

59public:

61

63

64 unsigned kind() const { return Kind; }

65

67 bool isGOT() const { return Kind == GOT; }

70

72

76

77

78

80

81

82

84

85

86

88};

89

90

91

93 const int FI;

94

95public:

98

102

104

106

108

109 void printCustom(raw_ostream &OS) const override;

110

112};

113

115protected:

117

118public:

122};

123

124

127

128public:

131

135

137};

138

139

141 const char *ES;

142

143public:

146

150

152};

153

154}

155

156#endif

static bool mayAlias(MachineInstr &MIa, SmallVectorImpl< MachineInstr * > &MemInsns, AliasAnalysis *AA)

static bool isConstant(const MachineInstr &MI)

CallEntryPseudoSourceValue(unsigned Kind, const TargetMachine &TM)

bool isAliased(const MachineFrameInfo *) const override

Test whether the memory pointed to by this PseudoSourceValue may also be pointed to by an LLVM IR Val...

LLVM_ABI ExternalSymbolPseudoSourceValue(const char *ES, const TargetMachine &TM)

const char * getSymbol() const

Definition PseudoSourceValue.h:151

static bool classof(const PseudoSourceValue *V)

Definition PseudoSourceValue.h:147

FixedStackPseudoSourceValue(int FI, const TargetMachine &TM)

Definition PseudoSourceValue.h:96

static bool classof(const PseudoSourceValue *V)

Definition PseudoSourceValue.h:99

int getFrameIndex() const

Definition PseudoSourceValue.h:111

LLVM_ABI GlobalValuePseudoSourceValue(const GlobalValue *GV, const TargetMachine &TM)

const GlobalValue * getValue() const

Definition PseudoSourceValue.h:136

static bool classof(const PseudoSourceValue *V)

Definition PseudoSourceValue.h:132

MIRFormater - Interface to format MIR operand based on target.

The MachineFrameInfo class represents an abstract stack frame until prolog/epilog code is inserted.

A description of a memory reference used in the backend.

Special value supplied for machine level alias analysis.

Definition PseudoSourceValue.h:33

bool isGOT() const

Definition PseudoSourceValue.h:67

friend class MachineMemOperand

Definition PseudoSourceValue.h:52

virtual ~PseudoSourceValue()

unsigned getAddressSpace() const

Definition PseudoSourceValue.h:71

PseudoSourceValue(unsigned Kind, const TargetMachine &TM)

friend class MIRFormatter

Definition PseudoSourceValue.h:53

unsigned getTargetCustom() const

Definition PseudoSourceValue.h:73

PSVKind

Definition PseudoSourceValue.h:35

@ GOT

Definition PseudoSourceValue.h:37

@ Stack

Definition PseudoSourceValue.h:36

@ GlobalValueCallEntry

Definition PseudoSourceValue.h:41

@ JumpTable

Definition PseudoSourceValue.h:38

@ ExternalSymbolCallEntry

Definition PseudoSourceValue.h:42

@ ConstantPool

Definition PseudoSourceValue.h:39

@ TargetCustom

Definition PseudoSourceValue.h:43

@ FixedStack

Definition PseudoSourceValue.h:40

bool isStack() const

Definition PseudoSourceValue.h:66

bool isConstantPool() const

Definition PseudoSourceValue.h:68

bool isJumpTable() const

Definition PseudoSourceValue.h:69

unsigned kind() const

Definition PseudoSourceValue.h:64

Primary interface to the complete machine description for the target machine.

This class implements an extremely fast bulk output stream that can only output to a stream.

This is an optimization pass for GlobalISel generic memory operations.

raw_ostream & operator<<(raw_ostream &OS, const APFixedPoint &FX)