[Mesa-dev] [PATCH] amd/common: fix loading InstanceID for tess on < GFX9

Samuel Pitoiset samuel.pitoiset at gmail.com
Thu Jan 11 13:56:07 UTC 2018


InstanceID is in VGPR2, not 1.

One more failure that CTS didn't catch up...

Reported-by: Alex Smith <asmith at feralinteractive.com>
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
---
 src/amd/common/ac_nir_to_llvm.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index 7153c9708d..d1247a7a60 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -6714,8 +6714,9 @@ LLVMModuleRef ac_translate_nir_to_llvm(LLVMTargetMachineRef tm,
 			ctx.abi.load_patch_vertices_in = load_patch_vertices_in;
 		} else if (shaders[i]->info.stage == MESA_SHADER_VERTEX) {
 			if (shader_info->info.vs.needs_instance_id) {
-				if (ctx.ac.chip_class == GFX9 &&
-				    shaders[shader_count - 1]->info.stage == MESA_SHADER_TESS_CTRL) {
+				if (ctx.options->key.vs.as_ls ||
+				    (ctx.ac.chip_class == GFX9 &&
+				     shaders[shader_count - 1]->info.stage == MESA_SHADER_TESS_CTRL)) {
 					ctx.shader_info->vs.vgpr_comp_cnt =
 						MAX2(2, ctx.shader_info->vs.vgpr_comp_cnt);
 				} else {
-- 
2.15.1



More information about the mesa-dev mailing list