LLVM: lib/Target/AVR/AVRMachineFunctionInfo.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13#ifndef LLVM_AVR_MACHINE_FUNCTION_INFO_H
14#define LLVM_AVR_MACHINE_FUNCTION_INFO_H
15
17
18namespace llvm {
19
20
22
23
24 bool HasSpills;
25
26
27
28 bool HasAllocas;
29
30
31
32 bool HasStackArgs;
33
34
35 bool IsInterruptHandler;
36
37
38 bool IsSignalHandler;
39
40
41
42 unsigned CalleeSavedFrameSize;
43
44
45 int VarArgsFrameIndex;
46
47public:
49 : HasSpills(false), HasAllocas(false), HasStackArgs(false),
50 CalleeSavedFrameSize(0), VarArgsFrameIndex(0) {
52
53 this->IsInterruptHandler =
55 this->IsSignalHandler =
57 }
58
65
68
71
74
75
79
82
85
88};
89
90}
91
92#endif
static GCRegistry::Add< OcamlGC > B("ocaml", "ocaml 3.10-compatible GC")
bool isInterruptHandler() const
Definition AVRMachineFunctionInfo.h:80
bool getHasSpills() const
Definition AVRMachineFunctionInfo.h:66
void setVarArgsFrameIndex(int Idx)
Definition AVRMachineFunctionInfo.h:87
void setCalleeSavedFrameSize(unsigned Bytes)
Definition AVRMachineFunctionInfo.h:84
unsigned getCalleeSavedFrameSize() const
Definition AVRMachineFunctionInfo.h:83
AVRMachineFunctionInfo(const Function &F, const TargetSubtargetInfo *STI)
Definition AVRMachineFunctionInfo.h:48
bool getHasStackArgs() const
Definition AVRMachineFunctionInfo.h:72
void setHasSpills(bool B)
Definition AVRMachineFunctionInfo.h:67
bool getHasAllocas() const
Definition AVRMachineFunctionInfo.h:69
bool isSignalHandler() const
Definition AVRMachineFunctionInfo.h:81
void setHasStackArgs(bool B)
Definition AVRMachineFunctionInfo.h:73
void setHasAllocas(bool B)
Definition AVRMachineFunctionInfo.h:70
MachineFunctionInfo * clone(BumpPtrAllocator &Allocator, MachineFunction &DestMF, const DenseMap< MachineBasicBlock *, MachineBasicBlock * > &Src2DstMBB) const override
Make a functionally equivalent copy of this MachineFunctionInfo in MF.
Definition AVRMachineFunctionInfo.h:60
bool isInterruptOrSignalHandler() const
Checks if the function is some form of interrupt service routine.
Definition AVRMachineFunctionInfo.h:76
int getVarArgsFrameIndex() const
Definition AVRMachineFunctionInfo.h:86
Ty * cloneInfo(const Ty &Old)
TargetSubtargetInfo - Generic base class for all target subtargets.
unsigned ID
LLVM IR allows to use arbitrary numbers as calling convention identifiers.
@ AVR_SIGNAL
Used for AVR signal routines.
@ AVR_INTR
Used for AVR interrupt routines.
This is an optimization pass for GlobalISel generic memory operations.
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...