diff options
author | Nicolai Hähnle <[email protected]> | 2017-04-19 10:08:25 +0200 |
---|---|---|
committer | Nicolai Hähnle <[email protected]> | 2017-04-28 11:33:58 +0200 |
commit | 99941a97241e550985e8e5624e4959835eb0cd6b (patch) | |
tree | d592659396a1a91d05366f075477d2ebc4885420 /src/compiler/glsl | |
parent | 24011ead71ea9980e6b34e40d9dbd64e6560f5a4 (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/compiler/glsl')
-rw-r--r-- | src/compiler/glsl/ir.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/compiler/glsl/ir.h b/src/compiler/glsl/ir.h index d7a81c5196d..9ab4df7219e 100644 --- a/src/compiler/glsl/ir.h +++ b/src/compiler/glsl/ir.h @@ -1098,6 +1098,13 @@ enum ir_intrinsic_id { ir_intrinsic_memory_barrier_image, ir_intrinsic_memory_barrier_shared, + ir_intrinsic_vote_all, + ir_intrinsic_vote_any, + ir_intrinsic_vote_eq, + ir_intrinsic_ballot, + ir_intrinsic_read_invocation, + ir_intrinsic_read_first_invocation, + ir_intrinsic_shared_load, ir_intrinsic_shared_store = MAKE_INTRINSIC_FOR_TYPE(store, shared), ir_intrinsic_shared_atomic_add = MAKE_INTRINSIC_FOR_TYPE(atomic_add, shared), |