LLVM  9.0.0svn
Functions
SIFrameLowering.cpp File Reference
#include "SIFrameLowering.h"
#include "AMDGPUSubtarget.h"
#include "SIInstrInfo.h"
#include "SIMachineFunctionInfo.h"
#include "SIRegisterInfo.h"
#include "MCTargetDesc/AMDGPUMCTargetDesc.h"
#include "llvm/CodeGen/LivePhysRegs.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/RegisterScavenging.h"
Include dependency graph for SIFrameLowering.cpp:

Go to the source code of this file.

Functions

static ArrayRef< MCPhysReg > getAllSGPR128 (const GCNSubtarget &ST, const MachineFunction &MF)
 
static ArrayRef< MCPhysReg > getAllSGPRs (const GCNSubtarget &ST, const MachineFunction &MF)
 
static unsigned findScratchNonCalleeSaveRegister (MachineFunction &MF, LivePhysRegs &LiveRegs, const TargetRegisterClass &RC)
 
static bool allStackObjectsAreDead (const MachineFrameInfo &MFI)
 

Function Documentation

◆ allStackObjectsAreDead()

static bool allStackObjectsAreDead ( const MachineFrameInfo MFI)
static

◆ findScratchNonCalleeSaveRegister()

static unsigned findScratchNonCalleeSaveRegister ( MachineFunction MF,
LivePhysRegs LiveRegs,
const TargetRegisterClass RC 
)
static

◆ getAllSGPR128()

static ArrayRef<MCPhysReg> getAllSGPR128 ( const GCNSubtarget ST,
const MachineFunction MF 
)
static

◆ getAllSGPRs()

static ArrayRef<MCPhysReg> getAllSGPRs ( const GCNSubtarget ST,
const MachineFunction MF 
)
static

Definition at line 31 of file SIFrameLowering.cpp.

References llvm::MachineInstrBuilder::addImm(), llvm::MachineBasicBlock::addLiveIn(), llvm::MachineRegisterInfo::addLiveIn(), llvm::MachineInstrBuilder::addReg(), assert(), llvm::sys::path::begin(), llvm::MachineBasicBlock::begin(), llvm::BuildMI(), llvm::ArrayRef< T >::drop_back(), llvm::AMDGPUFunctionArgInfo::FLAT_SCRATCH_INIT, llvm::GCNSubtarget::flatScratchIsPointer(), getAllSGPR128(), llvm::GCNSubtarget::getGeneration(), llvm::MachineFunction::getInfo(), llvm::GCNSubtarget::getInstrInfo(), llvm::GCNSubtarget::getMaxNumSGPRs(), llvm::SIMachineFunctionInfo::getNumPreloadedSGPRs(), llvm::SIMachineFunctionInfo::getPreloadedReg(), llvm::MachineFunction::getRegInfo(), llvm::SIInstrInfo::getRegisterInfo(), llvm::SIMachineFunctionInfo::getScratchRSrcReg(), llvm::SIMachineFunctionInfo::getScratchWaveOffsetReg(), llvm::SIMachineFunctionInfo::getStackPtrOffsetReg(), llvm::AMDGPUSubtarget::GFX10, llvm::SIFrameLowering::hasFP(), llvm::GCNSubtarget::hasSGPRInitBug(), I, llvm::AMDGPU::Hwreg::ID_FLAT_SCR_HI, llvm::AMDGPU::Hwreg::ID_FLAT_SCR_LO, llvm::MachineRegisterInfo::isAllocatable(), llvm::AMDGPUMachineFunction::isEntryFunction(), llvm::MachineRegisterInfo::isPhysRegUsed(), llvm::RegState::Kill, llvm::makeArrayRef(), MRI, Reg, llvm::MachineRegisterInfo::replaceRegWith(), llvm::SIRegisterInfo::reservedPrivateSegmentBufferReg(), llvm::SIRegisterInfo::reservedPrivateSegmentWaveByteOffsetReg(), llvm::SIMachineFunctionInfo::setFrameOffsetReg(), llvm::SIMachineFunctionInfo::setScratchRSrcReg(), llvm::SIMachineFunctionInfo::setScratchWaveOffsetReg(), llvm::SIMachineFunctionInfo::setStackPtrOffsetReg(), llvm::ArrayRef< T >::size(), llvm::ArrayRef< T >::slice(), llvm::ARM_MB::ST, TII, TRI, and llvm::AMDGPU::Hwreg::WIDTH_M1_SHIFT_.