Sweden-Number/dlls/wined3d
Józef Kucia 2b77c00b8f wined3d: Do not declare pixel shader inputs when they are not used.
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: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-13 20:56:19 +02:00
..
Makefile.in
arb_program_shader.c wined3d: Trace color fixup checks in apply_format_fixups(). 2017-05-30 11:03:58 +02:00
ati_fragment_shader.c wined3d: Trace color fixup checks in apply_format_fixups(). 2017-05-30 11:03:58 +02:00
buffer.c wined3d: Introduce query operation to destroy queries. 2017-05-30 11:03:55 +02:00
context.c wined3d: Implement WINED3D_QUERY_TYPE_PIPELINE_STATISTICS. 2017-06-05 19:47:31 +02:00
cs.c wined3d: Use WINED3D_CS_QUEUE_MAP for WINED3D_CS_OP_UPDATE_SUB_RESOURCE. 2017-06-07 22:55:07 +02:00
device.c wined3d: Use WINED3D_CS_QUEUE_MAP for WINED3D_CS_OP_UPDATE_SUB_RESOURCE. 2017-06-07 22:55:07 +02:00
directx.c wined3d: Also check for "Mesa" in GL_VERSION in wined3d_guess_gl_vendor(). 2017-06-12 18:30:12 +02:00
drawprim.c wined3d: Add support for patch list primitive type. 2017-05-19 14:01:35 +02:00
gl_compat.c
glsl_shader.c wined3d: Do not declare pixel shader inputs when they are not used. 2017-06-13 20:56:19 +02:00
nvidia_texture_shader.c wined3d: Trace color fixup checks in apply_format_fixups(). 2017-05-30 11:03:58 +02:00
palette.c
query.c wined3d: Rearrange wined3d_query_type enum values. 2017-06-05 19:47:40 +02:00
resource.c wined3d: Introduce a separate CS queue for resource maps. 2017-05-22 13:45:08 +02:00
sampler.c wined3d: Add parent ops for sampler objects. 2017-04-26 15:54:46 +02:00
shader.c wined3d: Avoid barrier() in tessellation control shader if possible. 2017-05-25 20:47:46 +02:00
shader_sm1.c
shader_sm4.c wined3d: Validate parameter lengths in shader_sm4_read_param() (AFL). 2017-05-31 20:51:45 +02:00
state.c wined3d: Only warn about 0 compare functions in wined3d_gl_compare_func(). 2017-05-31 20:51:44 +02:00
stateblock.c wined3d: Add support for patch list primitive type. 2017-05-19 14:01:35 +02:00
surface.c wined3d: Only translate coordinates for swapchain surfaces in surface_translate_drawable_coords(). 2017-05-22 13:45:08 +02:00
swapchain.c wined3d: Introduce a separate CS queue for resource maps. 2017-05-22 13:45:08 +02:00
texture.c wined3d: Fix "sysmem_count" accounting in wined3d_texture_invalidate_location(). 2017-05-25 20:47:45 +02:00
utils.c wined3d: Extend wined3d_check_device_format() to allow querying general format support. 2017-05-31 20:51:45 +02:00
version.rc
vertexdeclaration.c
view.c wined3d: Add checkGLcall() to wined3d_unordered_access_view_clear_uint(). 2017-05-16 18:58:57 +02:00
wined3d.spec wined3d: Add support for patch list primitive type. 2017-05-19 14:01:35 +02:00
wined3d_gl.h wined3d: Implement WINED3D_QUERY_TYPE_PIPELINE_STATISTICS. 2017-06-05 19:47:31 +02:00
wined3d_main.c wined3d: Add a trailing newline to an ERR() message. 2017-06-05 19:47:08 +02:00
wined3d_private.h wined3d: Implement WINED3D_QUERY_TYPE_PIPELINE_STATISTICS. 2017-06-05 19:47:31 +02:00