summaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker
diff options
context:
space:
mode:
authorNicolai Hähnle <[email protected]>2017-04-19 10:08:25 +0200
committerNicolai Hähnle <[email protected]>2017-04-28 11:33:58 +0200
commit99941a97241e550985e8e5624e4959835eb0cd6b (patch)
treed592659396a1a91d05366f075477d2ebc4885420 /src/mesa/state_tracker
parent24011ead71ea9980e6b34e40d9dbd64e6560f5a4 (diff)
glsl: add intrinsics for ARB_shader_group_vote and ARB_shader_ballot
These operations are currently implemented as IR expressions. However, they cannot be transformed and moved in the way that other IR expressions can because they have non-trivial interactions with control-flow. Reviewed-by: Timothy Arceri <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/mesa/state_tracker')
-rw-r--r--src/mesa/state_tracker/st_glsl_to_tgsi.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
index 8ca90f6c43d..85a55afb37e 100644
--- a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
+++ b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
@@ -3994,6 +3994,12 @@ glsl_to_tgsi_visitor::visit(ir_call *ir)
return;
}
+ case ir_intrinsic_vote_all:
+ case ir_intrinsic_vote_any:
+ case ir_intrinsic_vote_eq:
+ case ir_intrinsic_ballot:
+ case ir_intrinsic_read_first_invocation:
+ case ir_intrinsic_read_invocation:
case ir_intrinsic_invalid:
case ir_intrinsic_generic_load:
case ir_intrinsic_generic_store: