10 #ifndef LLVM_LIB_TARGET_HEXAGON_HEXAGONMACHINEFUNCTIONINFO_H 11 #define LLVM_LIB_TARGET_HEXAGON_HEXAGONMACHINEFUNCTIONINFO_H 30 unsigned SRetReturnReg = 0;
31 unsigned StackAlignBaseVReg = 0;
32 unsigned StackAlignBasePhysReg = 0;
33 int VarArgsFrameIndex;
34 bool HasClobberLR =
false;
35 bool HasEHReturn =
false;
36 std::map<const MachineInstr*, unsigned> PacketInfo;
37 virtual void anchor();
57 return (PacketInfo.count(MI) &&
61 return (PacketInfo.count(MI) &&
79 #endif // LLVM_LIB_TARGET_HEXAGON_HEXAGONMACHINEFUNCTIONINFO_H bool isEndPacket(const MachineInstr *MI) const
const unsigned int StartPacket
This class represents lattice values for constants.
void setHasEHReturn(bool H=true)
Hexagon target-specific information for each MachineFunction.
unsigned getSRetReturnReg() const
unsigned getStackAlignBasePhysReg() const
unsigned getStackAlignBaseVReg() const
void setStackAlignBasePhysReg(unsigned R)
MachineFunctionInfo - This class can be derived from and used by targets to hold private target-speci...
void setSRetReturnReg(unsigned Reg)
void setStackAlignBaseVReg(unsigned R)
const unsigned int EndPacket
Representation of each machine instruction.
void setVarArgsFrameIndex(int v)
HexagonMachineFunctionInfo(MachineFunction &MF)
int getVarArgsFrameIndex()
void setEndPacket(MachineInstr *MI)
void setStartPacket(MachineInstr *MI)
bool isStartPacket(const MachineInstr *MI) const
bool hasClobberLR() const
void setHasClobberLR(bool v)