[Mesa-dev] [PATCH] glsl: relax input->output validation for SSO programs

Anuj Phogat anuj.phogat at gmail.com
Thu Apr 2 12:28:49 PDT 2015


On Thu, Apr 2, 2015 at 2:59 AM, Tapani Pälli <tapani.palli at intel.com> wrote:
> Commit 18004c3 introduced more restrictive validation to linker
> between inputs and outputs. This patch skips the additional check
> for programs that utilize GL_ARB_separate_shader_objects, there
> inputs and outputs might not make exact match during linking but
> only when constructing the final pipeline.
>
> This made some of the GL_ARB_program_interface_query tests shaders
> fail to link, these tests can be used to verify the change.
>
> Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
> ---
>  src/glsl/link_varyings.cpp | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/glsl/link_varyings.cpp b/src/glsl/link_varyings.cpp
> index d6fb1ea..605748a 100644
> --- a/src/glsl/link_varyings.cpp
> +++ b/src/glsl/link_varyings.cpp
> @@ -270,7 +270,7 @@ cross_validate_outputs_to_inputs(struct gl_shader_program *prog,
>               */
>              assert(!input->data.assigned);
>              if (input->data.used && !input->get_interface_type() &&
> -                !input->data.explicit_location)
> +                !input->data.explicit_location && !prog->SeparateShader)
>                 linker_error(prog,
>                              "%s shader input `%s' "
>                              "has no matching output in the previous stage\n",
> --
> 2.1.0
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev

LGTM
Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>


More information about the mesa-dev mailing list