• Józef Kucia's avatar
    wined3d: Do not declare pixel shader inputs when they are not used. · 2b77c00b
    Józef Kucia authored
    This is a workaround for a bug in Mesa GLSL linker. The bug is triggered
    by GLSL generated for SM3 shaders when shader inputs are not read and
    interface blocks are used for shader inputs/outputs (core profile code
    path).
    
    Declarations for unused shader inputs are not generated for pixel
    shaders. We still declare shader outputs in the previous shader stage,
    but it's allowed by the GLSL 1.50 spec:
    
      "Only output variables that are read by the subsequent pipeline stage
      need to be written; it is allowed to have superfluous declarations of
      output variables."
    
    The table in section 4.3.4 (Input Variables) of the GLSL 4.20 spec even
    more explicitly allows shader output variables with no matching input
    variables declared in the consuming shader.
    Signed-off-by: 's avatarJózef Kucia <jkucia@codeweavers.com>
    Signed-off-by: 's avatarHenri Verbeet <hverbeet@codeweavers.com>
    Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
    2b77c00b
Name
Last commit
Last update
dlls Loading commit data...
documentation Loading commit data...
fonts Loading commit data...
include Loading commit data...
libs Loading commit data...
loader Loading commit data...
po Loading commit data...
programs Loading commit data...
server Loading commit data...
tools Loading commit data...
.mailmap Loading commit data...
ANNOUNCE Loading commit data...
AUTHORS Loading commit data...
COPYING.LIB Loading commit data...
LICENSE Loading commit data...
LICENSE.OLD Loading commit data...
MAINTAINERS Loading commit data...
Makefile.in Loading commit data...
README Loading commit data...
VERSION Loading commit data...
aclocal.m4 Loading commit data...
configure Loading commit data...
configure.ac Loading commit data...