LLVM 22.0.0git
llvm::SystemZRegisterInfo Struct Reference

#include "Target/SystemZ/SystemZRegisterInfo.h"

Inheritance diagram for llvm::SystemZRegisterInfo:
[legend]

Public Member Functions

 SystemZRegisterInfo (unsigned int RA, unsigned int HwMode)
const TargetRegisterClassgetPointerRegClass (unsigned Kind=0) const override
 getPointerRegClass - Return the register class to use to hold pointers.
const TargetRegisterClassgetCrossCopyRegClass (const TargetRegisterClass *RC) const override
 getCrossCopyRegClass - Returns a legal register class to copy a register in the specified class to or from.
bool getRegAllocationHints (Register VirtReg, ArrayRef< MCPhysReg > Order, SmallVectorImpl< MCPhysReg > &Hints, const MachineFunction &MF, const VirtRegMap *VRM, const LiveRegMatrix *Matrix) const override
bool requiresRegisterScavenging (const MachineFunction &MF) const override
bool requiresFrameIndexScavenging (const MachineFunction &MF) const override
const MCPhysReggetCalleeSavedRegs (const MachineFunction *MF) const override
const uint32_tgetCallPreservedMask (const MachineFunction &MF, CallingConv::ID CC) const override
const uint32_tgetNoPreservedMask () const override
BitVector getReservedRegs (const MachineFunction &MF) const override
bool eliminateFrameIndex (MachineBasicBlock::iterator MI, int SPAdj, unsigned FIOperandNum, RegScavenger *RS) const override
bool shouldCoalesce (MachineInstr *MI, const TargetRegisterClass *SrcRC, unsigned SubReg, const TargetRegisterClass *DstRC, unsigned DstSubReg, const TargetRegisterClass *NewRC, LiveIntervals &LIS) const override
 SrcRC and DstRC will be morphed into NewRC if this returns true.
Register getFrameRegister (const MachineFunction &MF) const override

Detailed Description

Definition at line 130 of file SystemZRegisterInfo.h.

Constructor & Destructor Documentation

◆ SystemZRegisterInfo()

SystemZRegisterInfo::SystemZRegisterInfo ( unsigned int RA,
unsigned int HwMode )

Definition at line 235 of file SystemZRegisterInfo.cpp.

References RA.

Member Function Documentation

◆ eliminateFrameIndex()

◆ getCalleeSavedRegs()

◆ getCallPreservedMask()

◆ getCrossCopyRegClass()

const TargetRegisterClass * SystemZRegisterInfo::getCrossCopyRegClass ( const TargetRegisterClass * RC) const
override

getCrossCopyRegClass - Returns a legal register class to copy a register in the specified class to or from.

Returns NULL if it is possible to copy between a two registers of the specified class.

Definition at line 446 of file SystemZRegisterInfo.cpp.

◆ getFrameRegister()

Register SystemZRegisterInfo::getFrameRegister ( const MachineFunction & MF) const
override

◆ getNoPreservedMask()

const uint32_t * SystemZRegisterInfo::getNoPreservedMask ( ) const
override

Definition at line 257 of file SystemZRegisterInfo.cpp.

◆ getPointerRegClass()

const TargetRegisterClass * llvm::SystemZRegisterInfo::getPointerRegClass ( unsigned Kind = 0) const
inlineoverride

getPointerRegClass - Return the register class to use to hold pointers.

This is currently only used by LOAD_STACK_GUARD, which requires a non-r0 register, hence ADDR64.

Definition at line 138 of file SystemZRegisterInfo.h.

◆ getRegAllocationHints()

◆ getReservedRegs()

◆ requiresFrameIndexScavenging()

bool llvm::SystemZRegisterInfo::requiresFrameIndexScavenging ( const MachineFunction & MF) const
inlineoverride

Definition at line 157 of file SystemZRegisterInfo.h.

◆ requiresRegisterScavenging()

bool llvm::SystemZRegisterInfo::requiresRegisterScavenging ( const MachineFunction & MF) const
inlineoverride

Definition at line 154 of file SystemZRegisterInfo.h.

◆ shouldCoalesce()


The documentation for this struct was generated from the following files: