[Mesa-dev] [PATCH 10/19] gallium/radeon: simplify radeon_llvm_emit_store for direct array addressing
Nicolai Hähnle
nhaehnle at gmail.com
Tue Aug 9 10:36:39 UTC 2016
From: Nicolai Hähnle <nicolai.haehnle at amd.com>
We can use the pointer stored in the temps array directly.
---
src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c | 7 -------
1 file changed, 7 deletions(-)
diff --git a/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c b/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c
index e084248..7b96a58 100644
--- a/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c
+++ b/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c
@@ -624,30 +624,23 @@ void radeon_llvm_emit_store(struct lp_build_tgsi_context *bld_base,
} else {
switch(reg->Register.File) {
case TGSI_FILE_OUTPUT:
temp_ptr = bld->outputs[reg->Register.Index][chan_index];
if (tgsi_type_is_64bit(dtype))
temp_ptr2 = bld->outputs[reg->Register.Index][chan_index + 1];
break;
case TGSI_FILE_TEMPORARY:
{
- LLVMValueRef array;
if (reg->Register.Index >= ctx->temps_count)
continue;
- array = get_alloca_for_array(bld_base, reg->Register.File, reg->Register.Index);
- if (array) {
- store_value_to_array(bld_base, value, reg->Register.File, chan_index, reg->Register.Index,
- NULL);
- continue;
- }
temp_ptr = ctx->temps[ TGSI_NUM_CHANNELS * reg->Register.Index + chan_index];
if (tgsi_type_is_64bit(dtype))
temp_ptr2 = ctx->temps[ TGSI_NUM_CHANNELS * reg->Register.Index + chan_index + 1];
break;
}
default:
return;
}
if (!tgsi_type_is_64bit(dtype))
--
2.7.4
More information about the mesa-dev
mailing list