Go to the documentation of this file.
13 #ifndef LLVM_AVR_REGISTER_INFO_H
14 #define LLVM_AVR_REGISTER_INFO_H
18 #define GET_REGINFO_HEADER
19 #include "AVRGenRegisterInfo.inc"
41 unsigned FIOperandNum,
48 unsigned Kind = 0)
const override;
62 #endif // LLVM_AVR_REGISTER_INFO_H
This is an optimization pass for GlobalISel generic memory operations.
Reg
All possible values of the reg field in the ModR/M byte.
bool shouldCoalesce(MachineInstr *MI, const TargetRegisterClass *SrcRC, unsigned SubReg, const TargetRegisterClass *DstRC, unsigned DstSubReg, const TargetRegisterClass *NewRC, LiveIntervals &LIS) const override
Register getFrameRegister(const MachineFunction &MF) const override
unsigned ID
LLVM IR allows to use arbitrary numbers as calling convention identifiers.
BitVector getReservedRegs(const MachineFunction &MF) const override
Representation of each machine instruction.
Utilities relating to AVR registers.
const uint16_t * getCalleeSavedRegs(const MachineFunction *MF=nullptr) const override
const uint32_t * getCallPreservedMask(const MachineFunction &MF, CallingConv::ID CC) const override
Wrapper class representing virtual and physical registers.
const TargetRegisterClass * getLargestLegalSuperClass(const TargetRegisterClass *RC, const MachineFunction &MF) const override
void eliminateFrameIndex(MachineBasicBlock::iterator MI, int SPAdj, unsigned FIOperandNum, RegScavenger *RS=nullptr) const override
Stack Frame Processing Methods.
void splitReg(Register Reg, Register &LoReg, Register &HiReg) const
Splits a 16-bit DREGS register into the lo/hi register pair.
const TargetRegisterClass * getPointerRegClass(const MachineFunction &MF, unsigned Kind=0) const override