summaryrefslogtreecommitdiffstats
path: root/src/glsl/ir.h
diff options
context:
space:
mode:
authorChris Forbes <chrisf@ijw.co.nz>2013-11-10 21:19:31 +1300
committerChris Forbes <chrisf@ijw.co.nz>2014-07-12 11:19:50 +1200
commit8b7a323596992a2a2127f40d2d4cae1e9fb0a94d (patch)
tree59d9ca571f3080b54e035a5d1c290d57a945f01a /src/glsl/ir.h
parentee2a818d3306170ba18f44342aa759c2892a293f (diff)
downloadexternal_mesa3d-8b7a323596992a2a2127f40d2d4cae1e9fb0a94d.zip
external_mesa3d-8b7a323596992a2a2127f40d2d4cae1e9fb0a94d.tar.gz
external_mesa3d-8b7a323596992a2a2127f40d2d4cae1e9fb0a94d.tar.bz2
allow builtin functions to require parameters to be shader inputs
The new interpolateAt* builtins have strange restrictions on the <interpolant> parameter. - It must be a shader input, or an element of a shader input array. - It must not include a swizzle. V2: Don't abuse ir_var_mode_shader_in for this; make a new flag. Signed-off-by: Chris Forbes <chrisf@ijw.co.nz> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
Diffstat (limited to 'src/glsl/ir.h')
-rw-r--r--src/glsl/ir.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/glsl/ir.h b/src/glsl/ir.h
index d5239d4..fa93efd 100644
--- a/src/glsl/ir.h
+++ b/src/glsl/ir.h
@@ -678,6 +678,12 @@ public:
unsigned from_named_ifc_block_array:1;
/**
+ * Non-zero if the variable must be a shader input. This is useful for
+ * constraints on function parameters.
+ */
+ unsigned must_be_shader_input:1;
+
+ /**
* \brief Layout qualifier for gl_FragDepth.
*
* This is not equal to \c ir_depth_layout_none if and only if this