summaryrefslogtreecommitdiffstats
path: root/src/compiler/glsl/link_varyings.h
diff options
context:
space:
mode:
authorTimothy Arceri <[email protected]>2016-03-03 15:26:53 +1100
committerTimothy Arceri <[email protected]>2016-03-31 12:52:05 +1100
commit2fab85aaea59cb2d31d34ea6de94180ca83fe2dd (patch)
treece5bee143ecf81de4ef813a80af4709ec4e9aa1c /src/compiler/glsl/link_varyings.h
parent8120e869b1cde7fd1a3679291782f2f50296cb45 (diff)
glsl: add xfb_stride link time validation
From the ARB_enhanced_layous spec: "It is a compile-time or link-time error to have any *xfb_offset* that overflows *xfb_stride*, whether stated on declarations before or after the *xfb_stride*, or in different compilation units. ... When no *xfb_stride* is specified for a buffer, the stride of a buffer will be the smallest needed to hold the variable placed at the highest offset, including any required padding." Reviewed-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/compiler/glsl/link_varyings.h')
-rw-r--r--src/compiler/glsl/link_varyings.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/compiler/glsl/link_varyings.h b/src/compiler/glsl/link_varyings.h
index 7165ecb9184..7919a8d5cd5 100644
--- a/src/compiler/glsl/link_varyings.h
+++ b/src/compiler/glsl/link_varyings.h
@@ -98,7 +98,8 @@ public:
unsigned get_num_outputs() const;
bool store(struct gl_context *ctx, struct gl_shader_program *prog,
struct gl_transform_feedback_info *info, unsigned buffer,
- const unsigned max_outputs, bool has_xfb_qualifiers) const;
+ const unsigned max_outputs, bool *explicit_stride,
+ bool has_xfb_qualifiers) const;
const tfeedback_candidate *find_candidate(gl_shader_program *prog,
hash_table *tfeedback_candidates);