[Mesa-dev] [PATCH 04/21] i965/fs: Force per-sample dispatch if the shader reads from a multisample FBO.

Francisco Jerez currojerez at riseup.net
Sat Jul 23 03:58:58 UTC 2016


The result of a framebuffer fetch from a multisample FBO is inherently
per-sample, so the spec requires at least those sections of the shader
that depend on the framebuffer fetch result to be executed once per
sample.
---
 src/mesa/drivers/dri/i965/brw_fs.cpp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp
index f9af525..c8686d1 100644
--- a/src/mesa/drivers/dri/i965/brw_fs.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs.cpp
@@ -6518,7 +6518,8 @@ brw_compile_fs(const struct brw_compiler *compiler, void *log_data,
       (key->persample_interp ||
        (shader->info.system_values_read & (SYSTEM_BIT_SAMPLE_ID |
                                            SYSTEM_BIT_SAMPLE_POS)) ||
-       shader->info.fs.uses_sample_qualifier);
+       shader->info.fs.uses_sample_qualifier ||
+       shader->info.outputs_read);
 
    prog_data->early_fragment_tests = shader->info.fs.early_fragment_tests;
 
-- 
2.9.0



More information about the mesa-dev mailing list