diff options
author | Ian Romanick <[email protected]> | 2018-04-18 13:34:25 -0700 |
---|---|---|
committer | Ian Romanick <[email protected]> | 2018-08-22 20:31:32 -0700 |
commit | 0842655ac654cf3090d2543ec955c967c38d2d03 (patch) | |
tree | 1a38e175926697238ef002f0af651730661d4a3a /src/compiler/nir/nir_intrinsics.py | |
parent | 69ce7baa9e0dd598aad80f559719fdf14928038e (diff) |
nir: Add floating point atomic min, max, and compare-swap instrinsics
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]>
Diffstat (limited to 'src/compiler/nir/nir_intrinsics.py')
-rw-r--r-- | src/compiler/nir/nir_intrinsics.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/compiler/nir/nir_intrinsics.py b/src/compiler/nir/nir_intrinsics.py index 836cb34d74a..8c9bc3bbc9a 100644 --- a/src/compiler/nir/nir_intrinsics.py +++ b/src/compiler/nir/nir_intrinsics.py @@ -359,6 +359,9 @@ intrinsic("deref_atomic_xor", src_comp=[1, 1], dest_comp=1) intrinsic("deref_atomic_exchange", src_comp=[1, 1], dest_comp=1) intrinsic("deref_atomic_comp_swap", src_comp=[1, 1, 1], dest_comp=1) intrinsic("deref_atomic_fadd", src_comp=[1, 1], dest_comp=1) +intrinsic("deref_atomic_fmin", src_comp=[1, 1], dest_comp=1) +intrinsic("deref_atomic_fmax", src_comp=[1, 1], dest_comp=1) +intrinsic("deref_atomic_fcomp_swap", src_comp=[1, 1, 1], dest_comp=1) # SSBO atomic intrinsics # @@ -385,7 +388,10 @@ intrinsic("ssbo_atomic_or", src_comp=[1, 1, 1], dest_comp=1) intrinsic("ssbo_atomic_xor", src_comp=[1, 1, 1], dest_comp=1) intrinsic("ssbo_atomic_exchange", src_comp=[1, 1, 1], dest_comp=1) intrinsic("ssbo_atomic_comp_swap", src_comp=[1, 1, 1, 1], dest_comp=1) -intrinsic("ssbo_atomic_fadd", src_comp=[1, 1, 1], dest_comp=1) +intrinsic("ssbo_atomic_fadd", src_comp=[1, 1, 1], dest_comp=1) +intrinsic("ssbo_atomic_fmin", src_comp=[1, 1, 1], dest_comp=1) +intrinsic("ssbo_atomic_fmax", src_comp=[1, 1, 1], dest_comp=1) +intrinsic("ssbo_atomic_fcomp_swap", src_comp=[1, 1, 1, 1], dest_comp=1) # CS shared variable atomic intrinsics # @@ -412,6 +418,9 @@ intrinsic("shared_atomic_xor", src_comp=[1, 1], dest_comp=1, indices=[BASE]) intrinsic("shared_atomic_exchange", src_comp=[1, 1], dest_comp=1, indices=[BASE]) intrinsic("shared_atomic_comp_swap", src_comp=[1, 1, 1], dest_comp=1, indices=[BASE]) intrinsic("shared_atomic_fadd", src_comp=[1, 1], dest_comp=1, indices=[BASE]) +intrinsic("shared_atomic_fmin", src_comp=[1, 1], dest_comp=1, indices=[BASE]) +intrinsic("shared_atomic_fmax", src_comp=[1, 1], dest_comp=1, indices=[BASE]) +intrinsic("shared_atomic_fcomp_swap", src_comp=[1, 1, 1], dest_comp=1, indices=[BASE]) def system_value(name, dest_comp, indices=[]): intrinsic("load_" + name, [], dest_comp, indices, |