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.
---
 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 0bbf0a9ecd..2bd1257a52 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -3202,8 +3202,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++) {
-- 
2.14.3

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to