radeonsi: isolate real framebuffer changes from the decompression passes (v3)
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Tue, 30 May 2017 20:36:28 +0000 (22:36 +0200)
committerMarek Olšák <marek.olsak@amd.com>
Wed, 7 Jun 2017 18:17:14 +0000 (20:17 +0200)
commit878bd981bf7aac1466ba3278796f200fa329e2af
tree53f94933913332e9c3dfcd65012abfd7fcf55779
parent257b538fd2e48666d5daf7bc5394c8d0a977fedf
radeonsi: isolate real framebuffer changes from the decompression passes (v3)

When a stencil buffer is part of the framebuffer state, it is
decompressed but because it's bindless, all draw calls set
stencil_dirty_level_mask to 1.

v2: Marek - set the flags outside the loop
          - also clear and set framebuffer.do_update_surf_dirtiness there
          - do it in the DB->CB copy path too
v3: Marek - save and restore the do_update_surf_dirtiness flag

Signed-off-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
src/gallium/drivers/radeonsi/si_blit.c
src/gallium/drivers/radeonsi/si_pipe.h
src/gallium/drivers/radeonsi/si_state.c