radeonsi/nir: Only set window_space_position for vertex shaders.
authorTimur Kristóf <timur.kristof@gmail.com>
Thu, 7 Mar 2019 07:19:02 +0000 (08:19 +0100)
committerTimothy Arceri <tarceri@itsqueeze.com>
Fri, 8 Mar 2019 00:39:45 +0000 (00:39 +0000)
By mistake, this was previously set for all shaders.
It is a vertex shader property so only makes sense to
set it for vertex shaders.

Signed-Off-By: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-By: Timothy Arceri <tarceri@itsqueeze.com>
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de>
src/gallium/drivers/radeonsi/si_shader_nir.c

index 0ead9348a56f2dcdbeb41f96a289ea5f4d6727f5..5fc1df250aafbbc95a45727953f73135e67dfba9 100644 (file)
@@ -343,8 +343,10 @@ void si_nir_scan_shader(const struct nir_shader *nir,
        info->properties[TGSI_PROPERTY_NEXT_SHADER] =
                pipe_shader_type_from_mesa(nir->info.next_stage);
 
-       info->properties[TGSI_PROPERTY_VS_WINDOW_SPACE_POSITION] =
-               nir->info.vs.window_space_position;
+       if (nir->info.stage == MESA_SHADER_VERTEX) {
+               info->properties[TGSI_PROPERTY_VS_WINDOW_SPACE_POSITION] =
+                       nir->info.vs.window_space_position;
+       }
 
        if (nir->info.stage == MESA_SHADER_TESS_CTRL) {
                info->properties[TGSI_PROPERTY_TCS_VERTICES_OUT] =