From: Marek Olšák Date: Fri, 9 Jun 2017 17:51:36 +0000 (+0200) Subject: radeonsi: pack si_framebuffer better X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6d43d352cc921b71cab03bd809cf651396a4d374;p=mesa.git radeonsi: pack si_framebuffer better Reviewed-by: Nicolai Hähnle --- diff --git a/src/gallium/drivers/radeon/r600_pipe_common.h b/src/gallium/drivers/radeon/r600_pipe_common.h index 84d38fb1089..56056fab95e 100644 --- a/src/gallium/drivers/radeon/r600_pipe_common.h +++ b/src/gallium/drivers/radeon/r600_pipe_common.h @@ -842,7 +842,7 @@ void vi_dcc_clear_level(struct r600_common_context *rctx, void evergreen_do_fast_color_clear(struct r600_common_context *rctx, struct pipe_framebuffer_state *fb, struct r600_atom *fb_state, - unsigned *buffers, unsigned *dirty_cbufs, + unsigned *buffers, ubyte *dirty_cbufs, const union pipe_color_union *color); bool r600_texture_disable_dcc(struct r600_common_context *rctx, struct r600_texture *rtex); diff --git a/src/gallium/drivers/radeon/r600_texture.c b/src/gallium/drivers/radeon/r600_texture.c index 32275b1581f..25abdd69125 100644 --- a/src/gallium/drivers/radeon/r600_texture.c +++ b/src/gallium/drivers/radeon/r600_texture.c @@ -2628,7 +2628,7 @@ static void si_set_optimal_micro_tile_mode(struct r600_common_screen *rscreen, void evergreen_do_fast_color_clear(struct r600_common_context *rctx, struct pipe_framebuffer_state *fb, struct r600_atom *fb_state, - unsigned *buffers, unsigned *dirty_cbufs, + unsigned *buffers, ubyte *dirty_cbufs, const union pipe_color_union *color) { int i; diff --git a/src/gallium/drivers/radeonsi/si_pipe.h b/src/gallium/drivers/radeonsi/si_pipe.h index 55fda4db35c..388f6e06a40 100644 --- a/src/gallium/drivers/radeonsi/si_pipe.h +++ b/src/gallium/drivers/radeonsi/si_pipe.h @@ -166,17 +166,17 @@ struct si_images_info { struct si_framebuffer { struct r600_atom atom; struct pipe_framebuffer_state state; - unsigned nr_samples; - unsigned log_samples; - unsigned compressed_cb_mask; unsigned colorbuf_enabled_4bit; unsigned spi_shader_col_format; unsigned spi_shader_col_format_alpha; unsigned spi_shader_col_format_blend; unsigned spi_shader_col_format_blend_alpha; - unsigned color_is_int8; - unsigned color_is_int10; - unsigned dirty_cbufs; + ubyte nr_samples:5; /* at most 16xAA */ + ubyte log_samples:3; /* at most 4 = 16xAA */ + ubyte compressed_cb_mask; + ubyte color_is_int8; + ubyte color_is_int10; + ubyte dirty_cbufs; bool dirty_zsbuf; bool any_dst_linear; bool do_update_surf_dirtiness;