diff options
author | Alyssa Rosenzweig <alyssa@rosenzweig.io> | 2023-05-15 08:58:45 -0400 |
---|---|---|
committer | Marge Bot <emma+marge@anholt.net> | 2023-05-16 22:36:21 +0000 |
commit | 9b4ec866426afd46d696ef1013ed20776b6e03f6 (patch) | |
tree | 1ab13506fda770948e4d99a7c84443196d8febc6 | |
parent | d4b2a7a26e1879987f3e93714a71a11c23b8cd45 (diff) | |
download | mesa-9b4ec866426afd46d696ef1013ed20776b6e03f6.tar.gz |
panvk: Lower legacy atomics earlier
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23036>
-rw-r--r-- | src/panfrost/vulkan/panvk_vX_nir_lower_descriptors.c | 13 | ||||
-rw-r--r-- | src/panfrost/vulkan/panvk_vX_shader.c | 1 |
2 files changed, 3 insertions, 11 deletions
diff --git a/src/panfrost/vulkan/panvk_vX_nir_lower_descriptors.c b/src/panfrost/vulkan/panvk_vX_nir_lower_descriptors.c index 6794b4bc1f9..f1f9cc33866 100644 --- a/src/panfrost/vulkan/panvk_vX_nir_lower_descriptors.c +++ b/src/panfrost/vulkan/panvk_vX_nir_lower_descriptors.c @@ -544,17 +544,8 @@ lower_intrinsic(nir_builder *b, nir_intrinsic_instr *intr, return lower_res_intrinsic(b, intr, ctx); case nir_intrinsic_image_deref_store: case nir_intrinsic_image_deref_load: - case nir_intrinsic_image_deref_atomic_add: - case nir_intrinsic_image_deref_atomic_imin: - case nir_intrinsic_image_deref_atomic_umin: - case nir_intrinsic_image_deref_atomic_imax: - case nir_intrinsic_image_deref_atomic_umax: - case nir_intrinsic_image_deref_atomic_and: - case nir_intrinsic_image_deref_atomic_or: - case nir_intrinsic_image_deref_atomic_xor: - case nir_intrinsic_image_deref_atomic_exchange: - case nir_intrinsic_image_deref_atomic_comp_swap: - case nir_intrinsic_image_deref_atomic_fadd: + case nir_intrinsic_image_deref_atomic: + case nir_intrinsic_image_deref_atomic_swap: case nir_intrinsic_image_deref_size: case nir_intrinsic_image_deref_samples: return lower_img_intrinsic(b, intr, ctx); diff --git a/src/panfrost/vulkan/panvk_vX_shader.c b/src/panfrost/vulkan/panvk_vX_shader.c index 483a44e5a43..06c68d18837 100644 --- a/src/panfrost/vulkan/panvk_vX_shader.c +++ b/src/panfrost/vulkan/panvk_vX_shader.c @@ -314,6 +314,7 @@ panvk_per_arch(shader_create)(struct panvk_device *dev, gl_shader_stage stage, .lower_invalid_implicit_lod = true, }; NIR_PASS_V(nir, nir_lower_tex, &lower_tex_options); + NIR_PASS_V(nir, nir_lower_legacy_atomics); NIR_PASS_V(nir, panvk_per_arch(nir_lower_descriptors), dev, layout, &shader->has_img_access); |