diff options
author | Iago Toral Quiroga <[email protected]> | 2017-10-16 12:43:52 +0200 |
---|---|---|
committer | Iago Toral Quiroga <[email protected]> | 2017-10-19 11:27:12 +0200 |
commit | 2d87caa279ea319fa89572fb8595a46c05a615c4 (patch) | |
tree | c608d2b2430506dfe9829c6ec77990a09fb1a911 /src/compiler/glsl/link_varyings.h | |
parent | 16631ca30ea6d6eec8101f07d97a55b2210026e8 (diff) |
glsl/linker: produce error when invalid explicit locations are used
We only need to add a check to validate output locations here. For
inputs with invalid locations we will fail to link when we can't
find a matching output in the same (invalid) location.
v2: compute location slots properly depending on shader stage and
variable type / direction
Fixes:
KHR-GL45.enhanced_layouts.varying_location_limit
Reviewed-by: Nicolai Hähnle <[email protected]>
Diffstat (limited to 'src/compiler/glsl/link_varyings.h')
-rw-r--r-- | src/compiler/glsl/link_varyings.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/compiler/glsl/link_varyings.h b/src/compiler/glsl/link_varyings.h index 4e1f6d2e42a..081b04ea38f 100644 --- a/src/compiler/glsl/link_varyings.h +++ b/src/compiler/glsl/link_varyings.h @@ -300,7 +300,8 @@ link_varyings(struct gl_shader_program *prog, unsigned first, unsigned last, struct gl_context *ctx, void *mem_ctx); void -cross_validate_outputs_to_inputs(struct gl_shader_program *prog, +cross_validate_outputs_to_inputs(struct gl_context *ctx, + struct gl_shader_program *prog, gl_linked_shader *producer, gl_linked_shader *consumer); |