Mesa (master): amd/common: bump the number of available user SGPRS to 32 on GFX9

Samuel Pitoiset hakzsam at kemper.freedesktop.org
Wed Jan 10 11:35:08 UTC 2018


Module: Mesa
Branch: master
Commit: 7145b20afb3eaf40b3b40b9a191d05d7fd23a4cb
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7145b20afb3eaf40b3b40b9a191d05d7fd23a4cb

Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Mon Jan  8 15:19:34 2018 +0100

amd/common: bump the number of available user SGPRS to 32 on GFX9

Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>

---

 src/amd/common/ac_nir_to_llvm.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index 840d27e7a8..932d648082 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -600,7 +600,9 @@ static void allocate_user_sgprs(struct nir_to_llvm_context *ctx,
 	if (ctx->shader_info->info.loads_push_constants)
 		user_sgpr_info->sgpr_count += 2;
 
-	uint32_t remaining_sgprs = 16 - user_sgpr_info->sgpr_count;
+	uint32_t available_sgprs = ctx->options->chip_class >= GFX9 ? 32 : 16;
+	uint32_t remaining_sgprs = available_sgprs - user_sgpr_info->sgpr_count;
+
 	if (remaining_sgprs / 2 < util_bitcount(ctx->shader_info->info.desc_set_used_mask)) {
 		user_sgpr_info->sgpr_count += 2;
 		user_sgpr_info->indirect_all_descriptor_sets = true;




More information about the mesa-commit mailing list