[PATCH] D15724: AMDGPU/SI: fix scratch resource register allocation on Tonga & Iceland
Nicolai Hähnle via llvm-commits
llvm-commits at lists.llvm.org
Tue Dec 29 15:15:17 PST 2015
nhaehnle updated this revision to Diff 43764.
nhaehnle added a comment.
Herald added a subscriber: qcolombet.
I have distilled a test that hits the issue. It's a pretty subtle balancing
to ensure the right number of SGPRs are used to trigger the bug without
running into the "Ran out of VGPRs for SGPR spilling" issue.
Two logically separate changes are required to make this new test pass:
1. Just skip the moving around of scratch resource registers on chips with the
SGPR init bug; after all, there's nothing to be gained by the move. This is a
simpler approach to what I tried before.
2. Separately, make getSIProgramInfo assume that XNACK_MASK is unused; this is
not really a long-term solution, but the other register calculations I've seen
(in particular getReservedRegs) make the same assumption.
- AMDGPU: add test/CodeGen/AMDGPU/spill-stress.ll
- AMDGPU/SI: Do not move scratch resource register on Tonga & Iceland
- AMDGPU/SI: Assume XNACK_MASK is not used in getSIProgramInfo
http://reviews.llvm.org/D15724
Files:
lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
lib/Target/AMDGPU/SIFrameLowering.cpp
test/CodeGen/AMDGPU/spill-stress.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D15724.43764.patch
Type: text/x-patch
Size: 7352 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151229/cb19426b/attachment.bin>
More information about the llvm-commits
mailing list