From: Eric Engestrom Date: Mon, 26 Jun 2017 11:14:49 +0000 (+0100) Subject: anv: use Mesa's u_atomic.h header X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2b237ff64cd4146e51bf6579293b1e803b1adfb4;p=mesa.git anv: use Mesa's u_atomic.h header Signed-off-by: Eric Engestrom Reviewed-by: Kenneth Graunke --- diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h index e5d88f28150..8079378ae63 100644 --- a/src/intel/vulkan/anv_private.h +++ b/src/intel/vulkan/anv_private.h @@ -46,6 +46,7 @@ #include "compiler/brw_compiler.h" #include "util/macros.h" #include "util/list.h" +#include "util/u_atomic.h" #include "util/u_vector.h" #include "vk_alloc.h" @@ -1862,14 +1863,14 @@ static inline void anv_shader_bin_ref(struct anv_shader_bin *shader) { assert(shader && shader->ref_cnt >= 1); - __sync_fetch_and_add(&shader->ref_cnt, 1); + p_atomic_inc(&shader->ref_cnt); } static inline void anv_shader_bin_unref(struct anv_device *device, struct anv_shader_bin *shader) { assert(shader && shader->ref_cnt >= 1); - if (__sync_fetch_and_add(&shader->ref_cnt, -1) == 1) + if (p_atomic_dec_zero(&shader->ref_cnt)) anv_shader_bin_destroy(device, shader); }