tu: Force gl_Layer to 0 when necessary

In particular this will help us implement input attachments correctly
with layered rendering.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5732>
This commit is contained in:
Connor Abbott 2020-07-03 12:03:00 +02:00 committed by Marge Bot
parent 4f91345f49
commit f69c3849b8
1 changed files with 4 additions and 0 deletions

View File

@ -1977,6 +1977,10 @@ tu_pipeline_builder_compile_shaders(struct tu_pipeline_builder *builder,
builder->shaders[stage] = shader;
}
struct tu_shader *gs = builder->shaders[MESA_SHADER_GEOMETRY];
key.layer_zero =
!gs || !(gs->ir3_shader->nir->info.outputs_written & VARYING_SLOT_LAYER);
pipeline->tess.patch_type = key.tessellation;
for (gl_shader_stage stage = MESA_SHADER_VERTEX;