diff options
author | Andres Gomez <[email protected]> | 2019-01-30 15:58:42 +0200 |
---|---|---|
committer | Andres Gomez <[email protected]> | 2019-04-29 12:13:29 +0200 |
commit | c81fbb42d94293e78e9c767bb00ad22855f9e0b0 (patch) | |
tree | 176f131044bc985f891683d18327be93907f60fc /doxygen/i965.doxy | |
parent | 812288bf0f65c360fd93803d14f1c74754835535 (diff) |
glsl/linker: check for xfb_offset aliasing
From page 76 (page 80 of the PDF) of the GLSL 4.60 v.5 spec:
" No aliasing in output buffers is allowed: It is a compile-time or
link-time error to specify variables with overlapping transform
feedback offsets."
Currently, this is expected to fail, but it succeeds:
"
...
layout (xfb_offset = 0) out vec2 a;
layout (xfb_offset = 0) out vec4 b;
...
"
Fixes the following piglit test:
tests/spec/arb_enhanced_layouts/compiler/transform-feedback-layout-qualifiers/xfb_offset/invalid-overlap.vert
Fixes the following test:
KHR-GL44.enhanced_layouts.xfb_output_overlapping
v2:
- Use a data structure to track the used components instead of a
nested loop (Ilia).
v3:
- Take the BITSET_WORD array out from the
gl_transform_feedback_buffer struct and make it local to the
validation process (Timothy).
- Do not use a nested scope for the validation (Timothy).
v4:
- Add reference to the fixed piglit test in the commit log.
- Add reference to the fixed VK-GL-CTS test in the commit
log (Tapani).
- Empty initialize the BITSET_WORD pointers array (Tapani).
Cc: Timothy Arceri <[email protected]>
Cc: Ilia Mirkin <[email protected]>
Signed-off-by: Andres Gomez <[email protected]>
Reviewed-by: Tapani Pälli <[email protected]>
Diffstat (limited to 'doxygen/i965.doxy')
0 files changed, 0 insertions, 0 deletions