diff options
author | Vadim Girlin <[email protected]> | 2012-06-26 12:23:31 -0400 |
---|---|---|
committer | Vadim Girlin <[email protected]> | 2012-06-27 02:06:55 +0400 |
commit | 470d00c0e270c6079232d0d5ab10bf3219768faf (patch) | |
tree | 4fe9acabc66c3bd7e6e672e315d3bdb9fbe1f980 /src/gallium/drivers/r600/r600_pipe.h | |
parent | 0c47d9dcab80923c61b3f5375128e9b511b842fb (diff) |
r600g: enable DUAL_EXPORT mode when possible
It seems DUAL_EXPORT on evergreen may be enabled when all CBs use 16-bit export
mode (EXPORT_4C_16BPC), also there should be at least one CB, and the PS
shouldn't export depth/stencil.
Signed-off-by: Vadim Girlin <[email protected]>
Diffstat (limited to 'src/gallium/drivers/r600/r600_pipe.h')
-rw-r--r-- | src/gallium/drivers/r600/r600_pipe.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_pipe.h b/src/gallium/drivers/r600/r600_pipe.h index 380fd660c29..72db0096dc4 100644 --- a/src/gallium/drivers/r600/r600_pipe.h +++ b/src/gallium/drivers/r600/r600_pipe.h @@ -214,6 +214,8 @@ struct r600_pipe_shader { unsigned pa_cl_vs_out_cntl; unsigned ps_cb_shader_mask; unsigned key; + unsigned db_shader_control; + unsigned ps_depth_export; }; struct r600_pipe_sampler_state { @@ -282,6 +284,7 @@ struct r600_context { unsigned fb_cb_shader_mask; unsigned sx_alpha_test_control; unsigned cb_shader_mask; + unsigned db_shader_control; unsigned cb_color_control; unsigned pa_sc_line_stipple; unsigned pa_cl_clip_cntl; @@ -419,6 +422,8 @@ boolean evergreen_is_format_supported(struct pipe_screen *screen, unsigned sample_count, unsigned usage); +void evergreen_update_dual_export_state(struct r600_context * rctx); + /* r600_blit.c */ void r600_init_blit_functions(struct r600_context *rctx); void r600_blit_uncompress_depth(struct pipe_context *ctx, struct r600_resource_texture *texture); |