LLVM
8.0.1
|
#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"
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 (MachineBasicBlock &MBB) |
static bool | allStackObjectsAreDead (const MachineFrameInfo &MFI) |
|
static |
Definition at line 645 of file SIFrameLowering.cpp.
References E, llvm::MachineFrameInfo::getObjectIndexBegin(), llvm::MachineFrameInfo::getObjectIndexEnd(), I, and llvm::MachineFrameInfo::isDeadObjectIndex().
Referenced by llvm::SIFrameLowering::hasFP(), and llvm::SIFrameLowering::processFunctionBeforeFrameFinalized().
|
static |
Definition at line 508 of file SIFrameLowering.cpp.
References llvm::LivePhysRegs::addLiveIns(), llvm::LivePhysRegs::addReg(), llvm::LivePhysRegs::available(), llvm::MachineBasicBlock::getParent(), llvm::MachineFunction::getRegInfo(), llvm::GCNSubtarget::getRegisterInfo(), llvm::MachineFunction::getSubtarget(), MRI, and Reg.
Referenced by llvm::SIFrameLowering::emitPrologue().
|
static |
Definition at line 26 of file SIFrameLowering.cpp.
References llvm::sys::path::begin(), llvm::GCNSubtarget::getMaxNumSGPRs(), and llvm::makeArrayRef().
Referenced by getAllSGPRs().
|
static |
Definition at line 32 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::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::GCNSubtarget::hasSGPRInitBug(), I, llvm::MachineRegisterInfo::isAllocatable(), llvm::MachineRegisterInfo::isPhysRegUsed(), llvm::RegState::Kill, llvm::makeArrayRef(), MRI, Reg, llvm::MachineRegisterInfo::replaceRegWith(), llvm::SIRegisterInfo::reservedPrivateSegmentBufferReg(), llvm::SIRegisterInfo::reservedPrivateSegmentWaveByteOffsetReg(), llvm::SIMachineFunctionInfo::setScratchRSrcReg(), llvm::SIMachineFunctionInfo::setScratchWaveOffsetReg(), llvm::ArrayRef< T >::size(), llvm::ArrayRef< T >::slice(), llvm::ARM_MB::ST, TII, and TRI.