LLVM: lib/Target/LoongArch/LoongArchMachineFunctionInfo.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13#ifndef LLVM_LIB_TARGET_LOONGARCH_LOONGARCHMACHINEFUNCTIONINFO_H

14#define LLVM_LIB_TARGET_LOONGARCH_LOONGARCHMACHINEFUNCTIONINFO_H

15

19

20namespace llvm {

21

22

23

24

26private:

27

28 int VarArgsFrameIndex = 0;

29

30 int VarArgsSaveSize = 0;

31

32

33 unsigned CalleeSavedStackSize = 0;

34

35

36

37 int BranchRelaxationSpillFrameIndex = -1;

38

39

41

42

43

45

46public:

49

56

59

62

65

67 return BranchRelaxationSpillFrameIndex;

68 }

70 BranchRelaxationSpillFrameIndex = Index;

71 }

72

74

78

80 JumpInfos.push_back(std::make_pair(JrMI, JTIIdx));

81 }

85};

86

87}

88

89#endif

void addSExt32Register(Register Reg)

Definition LoongArchMachineFunctionInfo.h:73

int getJumpInfoJTIIndex(unsigned Idx)

Definition LoongArchMachineFunctionInfo.h:84

LoongArchMachineFunctionInfo(const Function &F, const TargetSubtargetInfo *STI)

Definition LoongArchMachineFunctionInfo.h:47

void setVarArgsFrameIndex(int Index)

Definition LoongArchMachineFunctionInfo.h:58

int getBranchRelaxationSpillFrameIndex()

Definition LoongArchMachineFunctionInfo.h:66

int getVarArgsFrameIndex() const

Definition LoongArchMachineFunctionInfo.h:57

unsigned getJumpInfoSize()

Definition LoongArchMachineFunctionInfo.h:82

MachineFunctionInfo * clone(BumpPtrAllocator &Allocator, MachineFunction &DestMF, const DenseMap< MachineBasicBlock *, MachineBasicBlock * > &Src2DstMBB) const override

Make a functionally equivalent copy of this MachineFunctionInfo in MF.

Definition LoongArchMachineFunctionInfo.h:51

void setBranchRelaxationSpillFrameIndex(int Index)

Definition LoongArchMachineFunctionInfo.h:69

void setVarArgsSaveSize(int Size)

Definition LoongArchMachineFunctionInfo.h:61

MachineInstr * getJumpInfoJrMI(unsigned Idx)

Definition LoongArchMachineFunctionInfo.h:83

unsigned getVarArgsSaveSize() const

Definition LoongArchMachineFunctionInfo.h:60

unsigned getCalleeSavedStackSize() const

Definition LoongArchMachineFunctionInfo.h:63

void setJumpInfo(MachineInstr *JrMI, int JTIIdx)

Definition LoongArchMachineFunctionInfo.h:79

void setCalleeSavedStackSize(unsigned Size)

Definition LoongArchMachineFunctionInfo.h:64

bool isSExt32Register(Register Reg) const

Definition LoongArchMachineFunctionInfo.h:75

Ty * cloneInfo(const Ty &Old)

Representation of each machine instruction.

Wrapper class representing virtual and physical registers.

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

TargetSubtargetInfo - Generic base class for all target subtargets.

This is an optimization pass for GlobalISel generic memory operations.

bool is_contained(R &&Range, const E &Element)

Returns true if Element is found in Range.

BumpPtrAllocatorImpl<> BumpPtrAllocator

The standard BumpPtrAllocator which just uses the default template parameters.

MachineFunctionInfo - This class can be derived from and used by targets to hold private target-speci...