diff options
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_link.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_link.cpp b/src/mesa/drivers/dri/i965/brw_link.cpp index d2f2dd6f870..4159756fc5d 100644 --- a/src/mesa/drivers/dri/i965/brw_link.cpp +++ b/src/mesa/drivers/dri/i965/brw_link.cpp @@ -184,9 +184,12 @@ unify_interfaces(struct shader_info **infos) continue; if (prev_info) { - prev_info->outputs_written |= infos[i]->inputs_read; + prev_info->outputs_written |= infos[i]->inputs_read & + ~(VARYING_BIT_TESS_LEVEL_INNER | VARYING_BIT_TESS_LEVEL_OUTER); + infos[i]->inputs_read |= prev_info->outputs_written & + ~(VARYING_BIT_TESS_LEVEL_INNER | VARYING_BIT_TESS_LEVEL_OUTER); + prev_info->patch_outputs_written |= infos[i]->patch_inputs_read; - infos[i]->inputs_read |= prev_info->outputs_written; infos[i]->patch_inputs_read |= prev_info->patch_outputs_written; } prev_info = infos[i]; |