diff options
author | Jordan Justen <[email protected]> | 2015-10-10 08:59:42 -0700 |
---|---|---|
committer | Jordan Justen <[email protected]> | 2015-11-06 13:15:16 -0800 |
commit | 9d65f3208bbded17119c7ad38f4b692d3ed00635 (patch) | |
tree | 9f1d72ffae1f77a4fc3fecfbc312ad6b8b2d6009 /src/glsl/nir/nir_intrinsics.h | |
parent | 91f188710ad8dce79936c5d28fd7b9a91b6d870a (diff) |
nir: Add new barrier functions for compute shaders
When these functions are called in glsl-ir, we create a corresponding
nir intrinsic function call.
Signed-off-by: Jordan Justen <[email protected]>
Reviewed-by: Francisco Jerez <[email protected]>
Diffstat (limited to 'src/glsl/nir/nir_intrinsics.h')
-rw-r--r-- | src/glsl/nir/nir_intrinsics.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/glsl/nir/nir_intrinsics.h b/src/glsl/nir/nir_intrinsics.h index c2b6fe7166d..36fb2861c16 100644 --- a/src/glsl/nir/nir_intrinsics.h +++ b/src/glsl/nir/nir_intrinsics.h @@ -91,6 +91,17 @@ BARRIER(memory_barrier) */ INTRINSIC(shader_clock, 0, ARR(), true, 1, 0, 0, NIR_INTRINSIC_CAN_ELIMINATE) +/* + * Memory barrier with semantics analogous to the compute shader + * groupMemoryBarrier(), memoryBarrierAtomicCounter(), memoryBarrierBuffer(), + * memoryBarrierImage() and memoryBarrierShared() GLSL intrinsics. + */ +BARRIER(group_memory_barrier) +BARRIER(memory_barrier_atomic_counter) +BARRIER(memory_barrier_buffer) +BARRIER(memory_barrier_image) +BARRIER(memory_barrier_shared) + /** A conditional discard, with a single boolean source. */ INTRINSIC(discard_if, 1, ARR(1), false, 0, 0, 0, 0) |