diff options
| author | Tim Renouf <tpr.llvm@botech.co.uk> | 2018-04-11 14:27:41 +0000 |
|---|---|---|
| committer | Tim Renouf <tpr.llvm@botech.co.uk> | 2018-04-11 14:27:41 +0000 |
| commit | 8ca33bfcf3fe4ea3e3f42a2f2da5f6cd5e47f18a (patch) | |
| tree | fb185ed2325421b70de66755e9fab9defdc00f43 /llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp | |
| parent | 6df46f7665072941af4e15db0c590b92d91031c8 (diff) | |
| download | bcm5719-llvm-8ca33bfcf3fe4ea3e3f42a2f2da5f6cd5e47f18a.tar.gz bcm5719-llvm-8ca33bfcf3fe4ea3e3f42a2f2da5f6cd5e47f18a.zip | |
Revert "[AMDGPU] Ensure there are enough registers for wave dispatch"
This reverts 329808. That change caused a report of a failure in
test/CodeGen/MIR/AMDGPU/mir-canon-multi.mir that I didn't see. I suspect
it is an expensive-check-only error.
Change-Id: I8133f26f15e7d5ec2b09c687c12cd70e918461b0
llvm-svn: 329811
Diffstat (limited to 'llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp')
| -rw-r--r-- | llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp | 13 |
1 files changed, 0 insertions, 13 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp b/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp index 9cb9045ca76..d64e6555d03 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp @@ -837,19 +837,6 @@ void AMDGPUAsmPrinter::getSIProgramInfo(SIProgramInfo &ProgInfo, ProgInfo.NumSGPR += ExtraSGPRs; ProgInfo.NumVGPR += ExtraVGPRs; - // Ensure there are enough SGPRs and VGPRs for wave dispatch, where wave - // dispatch registers are function args. - unsigned WaveDispatchNumSGPR = 0, WaveDispatchNumVGPR = 0; - for (auto &Arg : MF.getFunction().args()) { - unsigned NumRegs = (Arg.getType()->getPrimitiveSizeInBits() + 31) / 32; - if (Arg.hasAttribute(Attribute::InReg)) - WaveDispatchNumSGPR += NumRegs; - else - WaveDispatchNumVGPR += NumRegs; - } - ProgInfo.NumSGPR = std::max(ProgInfo.NumSGPR, WaveDispatchNumSGPR); - ProgInfo.NumVGPR = std::max(ProgInfo.NumVGPR, WaveDispatchNumVGPR); - // Adjust number of registers used to meet default/requested minimum/maximum // number of waves per execution unit request. ProgInfo.NumSGPRsForWavesPerEU = std::max( |

