From: Christian König Date: Wed, 25 Jul 2012 19:58:46 +0000 (+0200) Subject: radeonsi: fix dummy export in shaders v2 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f18fd255cf283cdf4ba9326d437d1543fd38a139;p=mesa.git radeonsi: fix dummy export in shaders v2 v2: add assertion for vertex shader Signed-off-by: Christian König Reviewed-by: Michel Dänzer --- diff --git a/src/gallium/drivers/radeonsi/radeonsi_shader.c b/src/gallium/drivers/radeonsi/radeonsi_shader.c index 66050d3fd3e..f90fd1dde30 100644 --- a/src/gallium/drivers/radeonsi/radeonsi_shader.c +++ b/src/gallium/drivers/radeonsi/radeonsi_shader.c @@ -475,6 +475,25 @@ static void si_llvm_emit_epilogue(struct lp_build_tgsi_context * bld_base) } } + if (!last_args[0]) { + assert(si_shader_ctx->type == TGSI_PROCESSOR_FRAGMENT); + + /* Specify which components to enable */ + last_args[0] = lp_build_const_int32(base->gallivm, 0x0); + + /* Specify the target we are exporting */ + last_args[3] = lp_build_const_int32(base->gallivm, V_008DFC_SQ_EXP_MRT); + + /* Set COMPR flag to zero to export data as 32-bit */ + last_args[4] = uint->zero; + + /* dummy bits */ + last_args[5]= uint->zero; + last_args[6]= uint->zero; + last_args[7]= uint->zero; + last_args[8]= uint->zero; + } + /* Specify whether the EXEC mask represents the valid mask */ last_args[1] = lp_build_const_int32(base->gallivm, si_shader_ctx->type == TGSI_PROCESSOR_FRAGMENT);