mesa: add SSBOs to the list of fragment shader side effects
authorIago Toral Quiroga <itoral@igalia.com>
Fri, 18 Dec 2015 09:18:01 +0000 (10:18 +0100)
committerSamuel Iglesias Gonsálvez <siglesias@igalia.com>
Tue, 22 Dec 2015 11:38:48 +0000 (12:38 +0100)
commit5f8bb6fbb11f488bb3aa22c8067028fc51b2b9f9
tree5f11c5edc0e71dadebe67808e5d3c68ad1d32470
parent9bbdd0eda47677d27b339095913b7c1ee64b5f07
mesa: add SSBOs to the list of fragment shader side effects

The i965 driver uses this function to decide if it can disable the
FS unit in the absence of color/depth writes. We don't want to disable
the unit in the presence of SSBOs, since the fragment shader could
be writing to it.

We could go a step further and check not just for the presence of SSBOs
but also if the shader code writes to them. Does not look worth the trouble
though and we are not doing this for atomic buffers either anyway.

v2: put this into a generic _mesa_active_fragment_shader_has_side_effects
    function instead of having one specific for SSBOs (Jason).

Fixes the following CTS test:
ES31-CTS.shader_storage_buffer_object.advanced-usage-sync-vsfs

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
src/mesa/main/mtypes.h