Mesa (master): ac: pass the unmodified number of components to load gs inputs

Timothy Arceri tarceri at kemper.freedesktop.org
Tue Mar 6 00:46:11 UTC 2018


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

Author: Timothy Arceri <tarceri at itsqueeze.com>
Date:   Thu Mar  1 15:37:25 2018 +1100

ac: pass the unmodified number of components to load gs inputs

Currently both users of this would overflow an array when the
input was a dual slot double as they expected the number of
components to be a max of 4.

Since we pass the type we can just let the functions handle
doubles in a way they choose.

Reviewed-by: Dave Airlie <airlied at redhat.com>

---

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

diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index d2df2837c8..1fe09de484 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -3136,8 +3136,8 @@ static LLVMValueRef visit_load_var(struct ac_nir_context *ctx,
 
 			return ctx->abi->load_inputs(ctx->abi, instr->variables[0]->var->data.location,
 						     instr->variables[0]->var->data.driver_location,
-						     instr->variables[0]->var->data.location_frac, ve,
-						     vertex_index, const_index, type);
+						     instr->variables[0]->var->data.location_frac,
+						     instr->num_components, vertex_index, const_index, type);
 		}
 
 		for (unsigned chan = comp; chan < ve + comp; chan++) {




More information about the mesa-commit mailing list