mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 11:13:28 +01:00
R600/SI: Refactor AMDGPUAsmPrinter::EmitProgramInfoSI()
llvm-svn: 223144
This commit is contained in:
parent
f2916b94a2
commit
aedc60a0a8
@ -358,19 +358,21 @@ void AMDGPUAsmPrinter::getSIProgramInfo(SIProgramInfo &ProgInfo,
|
|||||||
ProgInfo.CodeLen = CodeSize;
|
ProgInfo.CodeLen = CodeSize;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static unsigned getRsrcReg(unsigned ShaderType) {
|
||||||
|
switch (ShaderType) {
|
||||||
|
default: // Fall through
|
||||||
|
case ShaderType::COMPUTE: return R_00B848_COMPUTE_PGM_RSRC1;
|
||||||
|
case ShaderType::GEOMETRY: return R_00B228_SPI_SHADER_PGM_RSRC1_GS;
|
||||||
|
case ShaderType::PIXEL: return R_00B028_SPI_SHADER_PGM_RSRC1_PS;
|
||||||
|
case ShaderType::VERTEX: return R_00B128_SPI_SHADER_PGM_RSRC1_VS;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void AMDGPUAsmPrinter::EmitProgramInfoSI(const MachineFunction &MF,
|
void AMDGPUAsmPrinter::EmitProgramInfoSI(const MachineFunction &MF,
|
||||||
const SIProgramInfo &KernelInfo) {
|
const SIProgramInfo &KernelInfo) {
|
||||||
const AMDGPUSubtarget &STM = TM.getSubtarget<AMDGPUSubtarget>();
|
const AMDGPUSubtarget &STM = TM.getSubtarget<AMDGPUSubtarget>();
|
||||||
const SIMachineFunctionInfo *MFI = MF.getInfo<SIMachineFunctionInfo>();
|
const SIMachineFunctionInfo *MFI = MF.getInfo<SIMachineFunctionInfo>();
|
||||||
|
unsigned RsrcReg = getRsrcReg(MFI->getShaderType());
|
||||||
unsigned RsrcReg;
|
|
||||||
switch (MFI->getShaderType()) {
|
|
||||||
default: // Fall through
|
|
||||||
case ShaderType::COMPUTE: RsrcReg = R_00B848_COMPUTE_PGM_RSRC1; break;
|
|
||||||
case ShaderType::GEOMETRY: RsrcReg = R_00B228_SPI_SHADER_PGM_RSRC1_GS; break;
|
|
||||||
case ShaderType::PIXEL: RsrcReg = R_00B028_SPI_SHADER_PGM_RSRC1_PS; break;
|
|
||||||
case ShaderType::VERTEX: RsrcReg = R_00B128_SPI_SHADER_PGM_RSRC1_VS; break;
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned LDSAlignShift;
|
unsigned LDSAlignShift;
|
||||||
if (STM.getGeneration() < AMDGPUSubtarget::SEA_ISLANDS) {
|
if (STM.getGeneration() < AMDGPUSubtarget::SEA_ISLANDS) {
|
||||||
|
Loading…
Reference in New Issue
Block a user