Module: Mesa
Branch: main
Commit: 0b9c96562b97e0c4fa1c058931530e317b37193c
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=0b9c96562b97e0c4fa1c058931530e317b37193c

Author: Yonggang Luo <luoyongg...@gmail.com>
Date:   Thu Jan  4 10:51:17 2024 +0800

treewide: Use util_is_power_of_two_nonzero{64|_uintptr} when needed

Signed-off-by: Yonggang Luo <luoyongg...@gmail.com>
Reviewed-by: Marek Olšák <marek.ol...@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26909>

---

 src/compiler/nir/nir_builder.h                      | 4 ++--
 src/gallium/drivers/iris/iris_resource.c            | 2 +-
 src/gallium/frontends/clover/api/transfer.cpp       | 4 ++--
 src/imagination/vulkan/pvr_job_render.c             | 2 +-
 src/imagination/vulkan/winsys/powervr/pvr_drm_bo.c  | 4 ++--
 src/imagination/vulkan/winsys/pvr_winsys_helper.c   | 2 +-
 src/imagination/vulkan/winsys/pvrsrvkm/pvr_srv_bo.c | 4 ++--
 src/nouveau/vulkan/nvk_heap.c                       | 2 +-
 src/util/ralloc.c                                   | 2 +-
 src/vulkan/util/vk_alloc.h                          | 2 +-
 10 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/src/compiler/nir/nir_builder.h b/src/compiler/nir/nir_builder.h
index 475aac42c7c..a16ece60e9a 100644
--- a/src/compiler/nir/nir_builder.h
+++ b/src/compiler/nir/nir_builder.h
@@ -1004,7 +1004,7 @@ nir_udiv_imm(nir_builder *build, nir_def *x, uint64_t y)
 
    if (y == 1) {
       return x;
-   } else if (util_is_power_of_two_nonzero(y)) {
+   } else if (util_is_power_of_two_nonzero64(y)) {
       return nir_ushr_imm(build, x, ffsll(y) - 1);
    } else {
       return nir_udiv(build, x, nir_imm_intN_t(build, y, x->bit_size));
@@ -1016,7 +1016,7 @@ nir_umod_imm(nir_builder *build, nir_def *x, uint64_t y)
 {
    assert(y > 0 && y <= u_uintN_max(x->bit_size));
 
-   if (util_is_power_of_two_nonzero(y)) {
+   if (util_is_power_of_two_nonzero64(y)) {
       return nir_iand_imm(build, x, y - 1);
    } else {
       return nir_umod(build, x, nir_imm_intN_t(build, y, x->bit_size));
diff --git a/src/gallium/drivers/iris/iris_resource.c 
b/src/gallium/drivers/iris/iris_resource.c
index 09dbcc0c5d4..714d82b2017 100644
--- a/src/gallium/drivers/iris/iris_resource.c
+++ b/src/gallium/drivers/iris/iris_resource.c
@@ -1280,7 +1280,7 @@ iris_resource_from_user_memory(struct pipe_screen 
*pscreen,
     * pointer.
     */
    size_t page_size = getpagesize();
-   assert(util_is_power_of_two_nonzero(page_size));
+   assert(util_is_power_of_two_nonzero_uintptr(page_size));
    size_t offset = (uintptr_t)user_memory & (page_size - 1);
    void *mem_start = (char *)user_memory - offset;
    size_t mem_size = offset + res_size;
diff --git a/src/gallium/frontends/clover/api/transfer.cpp 
b/src/gallium/frontends/clover/api/transfer.cpp
index bf088a092ee..e6b68b267c3 100644
--- a/src/gallium/frontends/clover/api/transfer.cpp
+++ b/src/gallium/frontends/clover/api/transfer.cpp
@@ -521,7 +521,7 @@ clEnqueueFillBuffer(cl_command_queue d_queue, cl_mem d_mem,
    if (!pattern)
       return CL_INVALID_VALUE;
 
-   if (!util_is_power_of_two_nonzero(pattern_size) ||
+   if (!util_is_power_of_two_nonzero_uintptr(pattern_size) ||
       pattern_size > 128 || size % pattern_size
       || offset % pattern_size) {
       return CL_INVALID_VALUE;
@@ -1124,7 +1124,7 @@ clover::EnqueueSVMMemFill(cl_command_queue d_q,
       return CL_INVALID_OPERATION;
 
    if (svm_ptr == nullptr || pattern == nullptr ||
-       !util_is_power_of_two_nonzero(pattern_size) ||
+       !util_is_power_of_two_nonzero_uintptr(pattern_size) ||
        pattern_size > 128 ||
        !ptr_is_aligned(svm_ptr, pattern_size) ||
        size % pattern_size)
diff --git a/src/imagination/vulkan/pvr_job_render.c 
b/src/imagination/vulkan/pvr_job_render.c
index e0dd39f5815..0727e465c27 100644
--- a/src/imagination/vulkan/pvr_job_render.c
+++ b/src/imagination/vulkan/pvr_job_render.c
@@ -172,7 +172,7 @@ VkResult pvr_free_list_create(struct pvr_device *device,
    size_alignment = (addr_alignment / ROGUE_FREE_LIST_ENTRY_SIZE) *
                     ROGUE_BIF_PM_PHYSICAL_PAGE_SIZE;
 
-   assert(util_is_power_of_two_nonzero(size_alignment));
+   assert(util_is_power_of_two_nonzero64(size_alignment));
 
    initial_size = align64(initial_size, size_alignment);
    max_size = align64(max_size, size_alignment);
diff --git a/src/imagination/vulkan/winsys/powervr/pvr_drm_bo.c 
b/src/imagination/vulkan/winsys/powervr/pvr_drm_bo.c
index 2f8d4039da1..3d6ef74d85f 100644
--- a/src/imagination/vulkan/winsys/powervr/pvr_drm_bo.c
+++ b/src/imagination/vulkan/winsys/powervr/pvr_drm_bo.c
@@ -178,7 +178,7 @@ VkResult pvr_drm_winsys_buffer_create(struct pvr_winsys *ws,
    uint32_t handle = 0;
    VkResult result;
 
-   assert(util_is_power_of_two_nonzero(alignment));
+   assert(util_is_power_of_two_nonzero64(alignment));
    size = ALIGN_POT(size, alignment);
    size = ALIGN_POT(size, ws->page_size);
 
@@ -347,7 +347,7 @@ VkResult pvr_drm_heap_alloc_carveout(struct pvr_winsys_heap 
*const heap,
    struct pvr_drm_winsys_vma *drm_vma;
    VkResult result;
 
-   assert(util_is_power_of_two_nonzero(alignment));
+   assert(util_is_power_of_two_nonzero64(alignment));
 
    drm_vma = vk_zalloc(drm_ws->base.alloc,
                        sizeof(*drm_vma),
diff --git a/src/imagination/vulkan/winsys/pvr_winsys_helper.c 
b/src/imagination/vulkan/winsys/pvr_winsys_helper.c
index e13e09c557e..97ad7809db7 100644
--- a/src/imagination/vulkan/winsys/pvr_winsys_helper.c
+++ b/src/imagination/vulkan/winsys/pvr_winsys_helper.c
@@ -90,7 +90,7 @@ VkResult pvr_winsys_helper_heap_alloc(struct pvr_winsys_heap 
*const heap,
       .heap = heap,
    };
 
-   assert(util_is_power_of_two_nonzero(alignment));
+   assert(util_is_power_of_two_nonzero64(alignment));
 
    /* pvr_srv_winsys_buffer_create() page aligns the size. We must do the same
     * here to ensure enough heap space is allocated to be able to map the
diff --git a/src/imagination/vulkan/winsys/pvrsrvkm/pvr_srv_bo.c 
b/src/imagination/vulkan/winsys/pvrsrvkm/pvr_srv_bo.c
index 91c4e50d2d2..ea357700e93 100644
--- a/src/imagination/vulkan/winsys/pvrsrvkm/pvr_srv_bo.c
+++ b/src/imagination/vulkan/winsys/pvrsrvkm/pvr_srv_bo.c
@@ -156,7 +156,7 @@ VkResult pvr_srv_winsys_buffer_create(struct pvr_winsys *ws,
    struct pvr_srv_winsys_bo *srv_bo;
    VkResult result;
 
-   assert(util_is_power_of_two_nonzero(alignment));
+   assert(util_is_power_of_two_nonzero64(alignment));
 
    /* Kernel will page align the size, we do the same here so we have access to
     * all the allocated memory.
@@ -359,7 +359,7 @@ VkResult pvr_srv_heap_alloc_carveout(struct pvr_winsys_heap 
*heap,
    struct pvr_srv_winsys_vma *srv_vma;
    VkResult result;
 
-   assert(util_is_power_of_two_nonzero(alignment));
+   assert(util_is_power_of_two_nonzero64(alignment));
 
    /* pvr_srv_winsys_buffer_create() page aligns the size. We must do the same
     * here to ensure enough heap space is allocated to be able to map the
diff --git a/src/nouveau/vulkan/nvk_heap.c b/src/nouveau/vulkan/nvk_heap.c
index 7fe5830ef6e..f7763579d0b 100644
--- a/src/nouveau/vulkan/nvk_heap.c
+++ b/src/nouveau/vulkan/nvk_heap.c
@@ -100,7 +100,7 @@ nvk_heap_grow_locked(struct nvk_device *dev, struct 
nvk_heap *heap)
          assert(heap->bo_count == 1);
          struct nouveau_ws_bo *old_bo = heap->bos[0].bo;
 
-         assert(util_is_power_of_two_nonzero(heap->total_size));
+         assert(util_is_power_of_two_nonzero64(heap->total_size));
          assert(heap->total_size >= NVK_HEAP_MIN_SIZE);
          assert(heap->total_size <= old_bo->size);
          assert(heap->total_size < new_bo_size);
diff --git a/src/util/ralloc.c b/src/util/ralloc.c
index 80287f1ea37..aaa1f28094e 100644
--- a/src/util/ralloc.c
+++ b/src/util/ralloc.c
@@ -806,7 +806,7 @@ void *
 gc_alloc_size(gc_ctx *ctx, size_t size, size_t alignment)
 {
    assert(ctx);
-   assert(util_is_power_of_two_nonzero(alignment));
+   assert(util_is_power_of_two_nonzero_uintptr(alignment));
 
    alignment = MAX2(alignment, alignof(gc_block_header));
 
diff --git a/src/vulkan/util/vk_alloc.h b/src/vulkan/util/vk_alloc.h
index 0f8a3cad830..729cf4e3e1a 100644
--- a/src/vulkan/util/vk_alloc.h
+++ b/src/vulkan/util/vk_alloc.h
@@ -191,7 +191,7 @@ static ALWAYS_INLINE void
 vk_multialloc_add_size_align(struct vk_multialloc *ma,
                              void **ptr, size_t size, size_t align)
 {
-   assert(util_is_power_of_two_nonzero(align));
+   assert(util_is_power_of_two_nonzero_uintptr(align));
    if (size == 0) {
       *ptr = NULL;
       return;

Reply via email to