summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/AMDGPU/attr-amdgpu-num-sgpr.ll
diff options
context:
space:
mode:
authorMarek Olsak <marek.olsak@amd.com>2016-12-09 19:49:54 +0000
committerMarek Olsak <marek.olsak@amd.com>2016-12-09 19:49:54 +0000
commit0f55fbae6c7f40938b27571a20752a376ae49eb1 (patch)
tree528ef08804bc9a7243957b77561bef09bacbb01b /llvm/test/CodeGen/AMDGPU/attr-amdgpu-num-sgpr.ll
parent693e9be9181eb8b3cc91e254a2acb49accafbd9c (diff)
downloadbcm5719-llvm-0f55fbae6c7f40938b27571a20752a376ae49eb1.tar.gz
bcm5719-llvm-0f55fbae6c7f40938b27571a20752a376ae49eb1.zip
AMDGPU/SI: Don't reserve XNACK when it's disabled
Summary: This frees 2 additional scalar registers. These are results from all of my 3 patches combined: Polaris: Spilled SGPRs: 2231 -> 1517 (-32.00 %) Tonga: Spilled SGPRs: 3829 -> 2608 (-31.89 %) Spilled VGPRs: 100 -> 84 (-16.00 %) Tonga even spills SGPRs via VGPRs to scratch. That's a compute shader limited to 64 VGPRs. Reviewers: tstellarAMD Subscribers: arsenm, kzhuravl, wdng, nhaehnle, yaxunl, tony-tye Differential Revision: https://reviews.llvm.org/D27151 llvm-svn: 289262
Diffstat (limited to 'llvm/test/CodeGen/AMDGPU/attr-amdgpu-num-sgpr.ll')
-rw-r--r--llvm/test/CodeGen/AMDGPU/attr-amdgpu-num-sgpr.ll12
1 files changed, 6 insertions, 6 deletions
diff --git a/llvm/test/CodeGen/AMDGPU/attr-amdgpu-num-sgpr.ll b/llvm/test/CodeGen/AMDGPU/attr-amdgpu-num-sgpr.ll
index da49517e003..e4f6e72e697 100644
--- a/llvm/test/CodeGen/AMDGPU/attr-amdgpu-num-sgpr.ll
+++ b/llvm/test/CodeGen/AMDGPU/attr-amdgpu-num-sgpr.ll
@@ -9,10 +9,10 @@
; FIXME: Should be ablo to skip this copying of the private segment
; buffer because all the SGPR spills are to VGPRs.
-; ALL: s_mov_b64 s[6:7], s[2:3]
-; ALL: s_mov_b64 s[4:5], s[0:1]
+; ALL: s_mov_b64 s[10:11], s[2:3]
+; ALL: s_mov_b64 s[8:9], s[0:1]
; ALL: SGPRBlocks: 1
-; ALL: NumSGPRsForWavesPerEU: 12
+; ALL: NumSGPRsForWavesPerEU: 14
define void @max_12_sgprs(i32 addrspace(1)* %out1,
i32 addrspace(1)* %out2,
@@ -46,9 +46,9 @@ define void @max_12_sgprs(i32 addrspace(1)* %out1,
; TOSGPR: SGPRBlocks: 1
; TOSGPR: NumSGPRsForWavesPerEU: 16
-; TOSMEM: s_mov_b64 s[6:7], s[2:3]
-; TOSMEM: s_mov_b32 s9, s13
-; TOSMEM: s_mov_b64 s[4:5], s[0:1]
+; TOSMEM: s_mov_b64 s[10:11], s[2:3]
+; TOSMEM: s_mov_b64 s[8:9], s[0:1]
+; TOSMEM: s_mov_b32 s7, s13
; TOSMEM: SGPRBlocks: 1
; TOSMEM: NumSGPRsForWavesPerEU: 16
OpenPOWER on IntegriCloud