aboutsummaryrefslogtreecommitdiffstats
path: root/src/compiler/glsl/builtin_functions.cpp
diff options
context:
space:
mode:
authorPierre-Eric Pelloux-Prayer <[email protected]>2019-07-12 16:38:44 +0200
committerMarek Olšák <[email protected]>2019-08-06 17:41:00 -0400
commitfc0a2e5d017dcb9e7f236d69745dff89e116b92e (patch)
tree6698f874e9dd3389180554055aa6c299926e89e9 /src/compiler/glsl/builtin_functions.cpp
parent70a47fb0327b85b3a71c12ceff6997e23efa3440 (diff)
glsl: add EXT_shader_image_load_store new image functions
This extension has 2 functions that are missing from the ARB versions: - imageAtomicIncWrap - imageAtomicDecWrap Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/compiler/glsl/builtin_functions.cpp')
-rw-r--r--src/compiler/glsl/builtin_functions.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/compiler/glsl/builtin_functions.cpp b/src/compiler/glsl/builtin_functions.cpp
index 095eb84055a..95d45033a01 100644
--- a/src/compiler/glsl/builtin_functions.cpp
+++ b/src/compiler/glsl/builtin_functions.cpp
@@ -4423,6 +4423,18 @@ builtin_builder::add_image_functions(bool glsl)
flags | IMAGE_FUNCTION_SUPPORTS_FLOAT_DATA_TYPE |
IMAGE_FUNCTION_MS_ONLY,
ir_intrinsic_image_samples);
+
+ /* EXT_shader_image_load_store */
+ add_image_function(glsl ? "imageAtomicIncWrap" : "__intrinsic_image_atomic_inc_wrap",
+ "__intrinsic_image_atomic_inc_wrap",
+ &builtin_builder::_image_prototype, 1,
+ (atom_flags | IMAGE_FUNCTION_EXT_ONLY),
+ ir_intrinsic_image_atomic_inc_wrap);
+ add_image_function(glsl ? "imageAtomicDecWrap" : "__intrinsic_image_atomic_dec_wrap",
+ "__intrinsic_image_atomic_dec_wrap",
+ &builtin_builder::_image_prototype, 1,
+ (atom_flags | IMAGE_FUNCTION_EXT_ONLY),
+ ir_intrinsic_image_atomic_dec_wrap);
}
ir_variable *