diff options
author | Andres Gomez <[email protected]> | 2019-03-08 23:21:58 +0200 |
---|---|---|
committer | Andres Gomez <[email protected]> | 2019-04-15 22:34:50 +0000 |
commit | 42351c21bbb9ed5e067737ac72e1da510832ddd7 (patch) | |
tree | fcf790858a35ec32adfe316d7de2a5a4c518a13c /src/compiler/glsl/link_varyings.cpp | |
parent | 6281517f3e249024285b137975196432798db530 (diff) |
glsl/linker: always validate explicit locations for first and last interfaces
Until now, we were only doing this when linking a SSO
program. However, nothing avoids linking a non SSO program which
doesn't have both a VS and FS. In those cases, we also need to report
the usual linking errors, if happening.
v2: Use a better name for the renamed function (Timothy).
Signed-off-by: Andres Gomez <[email protected]>
Reviewed-by: Timothy Arceri <[email protected]>
Diffstat (limited to 'src/compiler/glsl/link_varyings.cpp')
-rw-r--r-- | src/compiler/glsl/link_varyings.cpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/src/compiler/glsl/link_varyings.cpp b/src/compiler/glsl/link_varyings.cpp index 89a1463c878..22ec411837d 100644 --- a/src/compiler/glsl/link_varyings.cpp +++ b/src/compiler/glsl/link_varyings.cpp @@ -678,17 +678,15 @@ validate_explicit_variable_location(struct gl_context *ctx, /** * Validate explicit locations for the inputs to the first stage and the - * outputs of the last stage in an SSO program (everything in between is - * validated in cross_validate_outputs_to_inputs). + * outputs of the last stage in a program, if those are not the VS and FS + * shaders. */ void -validate_sso_explicit_locations(struct gl_context *ctx, - struct gl_shader_program *prog, - gl_shader_stage first_stage, - gl_shader_stage last_stage) +validate_first_and_last_interface_explicit_locations(struct gl_context *ctx, + struct gl_shader_program *prog, + gl_shader_stage first_stage, + gl_shader_stage last_stage) { - assert(prog->SeparateShader); - /* VS inputs and FS outputs are validated in * assign_attribute_or_color_locations() */ |