From e23fec14450e36f2584373a9980e9eb25bcc7438 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sat, 4 Oct 2014 17:40:39 +0200 Subject: [PATCH] radeonsi: use tgsi_shader_info in fetch_input_gs MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Reviewed-by: Michel Dänzer --- src/gallium/drivers/radeonsi/si_shader.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c index 203e5056e01..692d2a9967e 100644 --- a/src/gallium/drivers/radeonsi/si_shader.c +++ b/src/gallium/drivers/radeonsi/si_shader.c @@ -354,10 +354,11 @@ static LLVMValueRef fetch_input_gs( LLVMValueRef t_list; LLVMValueRef args[9]; unsigned vtx_offset_param; - struct si_shader_input *input = &shader->input[reg->Register.Index]; + struct tgsi_shader_info *info = &shader->selector->info; + unsigned semantic_name = info->input_semantic_name[reg->Register.Index]; + unsigned semantic_index = info->input_semantic_index[reg->Register.Index]; - if (swizzle != ~0 && - shader->input[reg->Register.Index].name == TGSI_SEMANTIC_PRIMID) { + if (swizzle != ~0 && semantic_name == TGSI_SEMANTIC_PRIMID) { if (swizzle == 0) return LLVMGetParam(si_shader_ctx->radeon_bld.main_fn, SI_PARAM_PRIMITIVE_ID); @@ -400,7 +401,7 @@ static LLVMValueRef fetch_input_gs( args[0] = t_list; args[1] = vtx_offset; args[2] = lp_build_const_int32(gallivm, - (get_param_index(input->name, input->sid, + (get_param_index(semantic_name, semantic_index, shader->selector->gs_used_inputs) * 4 + swizzle) * 256); args[3] = uint->zero; -- 2.30.2