summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary/tgsi/tgsi_ureg.h
diff options
context:
space:
mode:
authorJoe M. Kniss <[email protected]>2018-06-20 17:55:10 -0700
committerDave Airlie <[email protected]>2018-06-29 11:11:54 +1000
commit70425bcfe63c4e9191809659d019ec4af923595d (patch)
tree3993a5978c655b0a1bed9ce71447ded2fb16276c /src/gallium/auxiliary/tgsi/tgsi_ureg.h
parentc2c803be7bfb857b6846390d2aae7523319ac58e (diff)
gallium: plumb invariant output attrib thru TGSI
Add support for glsl 'invariant' modifier for output data declarations. Gallium drivers that use TGSI serialization currently loose invariant modifiers in glsl shaders. v2: use boolean for invariant instead of unsigned. Tested: chromiumos on qemu with virglrenderer. Reviewed-by: Marek Olšák <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/gallium/auxiliary/tgsi/tgsi_ureg.h')
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_ureg.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/gallium/auxiliary/tgsi/tgsi_ureg.h b/src/gallium/auxiliary/tgsi/tgsi_ureg.h
index ac46da55080..4d4a954529b 100644
--- a/src/gallium/auxiliary/tgsi/tgsi_ureg.h
+++ b/src/gallium/auxiliary/tgsi/tgsi_ureg.h
@@ -79,6 +79,7 @@ struct ureg_dst
unsigned DimIndirect : 1; /* BOOL */
unsigned Dimension : 1; /* BOOL */
unsigned Saturate : 1; /* BOOL */
+ unsigned Invariant : 1; /* BOOL */
int Index : 16; /* SINT */
int IndirectIndex : 16; /* SINT */
unsigned IndirectFile : 4; /* TGSI_FILE_ */
@@ -250,7 +251,8 @@ ureg_DECL_output_layout(struct ureg_program *,
unsigned index,
unsigned usage_mask,
unsigned array_id,
- unsigned array_size);
+ unsigned array_size,
+ boolean invariant);
struct ureg_dst
ureg_DECL_output_masked(struct ureg_program *,