diff options
author | Christian König <[email protected]> | 2012-07-25 21:58:46 +0200 |
---|---|---|
committer | Christian König <[email protected]> | 2012-07-30 15:01:34 +0200 |
commit | f18fd255cf283cdf4ba9326d437d1543fd38a139 (patch) | |
tree | 5c1809c13e8a10acf57ffccb804f71a78c0949ad /src/gallium/drivers | |
parent | b15e3ae5b423dd8846a35500c0274d1d74f6b836 (diff) |
radeonsi: fix dummy export in shaders v2
v2: add assertion for vertex shader
Signed-off-by: Christian König <[email protected]>
Reviewed-by: Michel Dänzer <[email protected]>
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r-- | src/gallium/drivers/radeonsi/radeonsi_shader.c | 19 |
1 files changed, 19 insertions, 0 deletions
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); |