diff options
author | Marek Olšák <[email protected]> | 2014-05-06 19:55:48 +0200 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2014-05-10 13:58:46 +0200 |
commit | 9baaa5dd4f34e96587504d275934fefa1a96c936 (patch) | |
tree | 6235205f986dbbf86bf2012dbfde01e7371295f1 /src/gallium/drivers | |
parent | bd2df40a848c2641c70fed5e1a452938dd8eb7cb (diff) |
radeonsi: simplify depth/stencil export code
Reviewed-by: Michel Dänzer <[email protected]>
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r-- | src/gallium/drivers/radeonsi/si_shader.c | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c index 00dfb3c783c..3ed4ad2d52e 100644 --- a/src/gallium/drivers/radeonsi/si_shader.c +++ b/src/gallium/drivers/radeonsi/si_shader.c @@ -1404,30 +1404,24 @@ static void si_llvm_emit_fs_epilogue(struct lp_build_tgsi_context * bld_base) /* Specify the target we are exporting */ args[3] = lp_build_const_int32(base->gallivm, V_008DFC_SQ_EXP_MRTZ); + args[5] = base->zero; /* R, depth */ + args[6] = base->zero; /* G, stencil test value[0:7], stencil op value[8:15] */ + args[7] = base->zero; /* B, sample mask */ + args[8] = base->zero; /* A, alpha to mask */ + if (depth_index >= 0) { out_ptr = si_shader_ctx->radeon_bld.soa.outputs[depth_index][2]; args[5] = LLVMBuildLoad(base->gallivm->builder, out_ptr, ""); mask |= 0x1; - - if (stencil_index < 0) { - args[6] = - args[7] = - args[8] = args[5]; - } } if (stencil_index >= 0) { out_ptr = si_shader_ctx->radeon_bld.soa.outputs[stencil_index][1]; - args[7] = - args[8] = args[6] = LLVMBuildLoad(base->gallivm->builder, out_ptr, ""); /* Only setting the stencil component bit (0x2) here * breaks some stencil piglit tests */ mask |= 0x3; - - if (depth_index < 0) - args[5] = args[6]; } /* Specify which components to enable */ |