Mesa (main): ir3: Use isam for bindless images

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Feb 28 23:55:25 UTC 2022


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

Author: Connor Abbott <cwabbott0 at gmail.com>
Date:   Mon Feb 21 19:25:40 2022 +0100

ir3: Use isam for bindless images

In the bindless case, we don't have to keep any shadow descriptors and
can just reuse the IBO descriptor as a texture descriptor. Now that
we're emitting the swizzle we can just flip this on.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15114>

---

 src/freedreno/ir3/ir3_compiler_nir.c | 9 +--------
 1 file changed, 1 insertion(+), 8 deletions(-)

diff --git a/src/freedreno/ir3/ir3_compiler_nir.c b/src/freedreno/ir3/ir3_compiler_nir.c
index 67f1143f92b..8469417aa20 100644
--- a/src/freedreno/ir3/ir3_compiler_nir.c
+++ b/src/freedreno/ir3/ir3_compiler_nir.c
@@ -2039,15 +2039,8 @@ emit_intrinsic(struct ir3_context *ctx, nir_intrinsic_instr *intr)
       emit_intrinsic_store_scratch(ctx, intr);
       break;
    case nir_intrinsic_image_load:
-      emit_intrinsic_load_image(ctx, intr, dst);
-      break;
    case nir_intrinsic_bindless_image_load:
-      /* Bindless uses the IBO state, which doesn't have swizzle filled out,
-       * so using isam doesn't work.
-       *
-       * TODO: can we use isam if we fill out more fields?
-       */
-      ctx->funcs->emit_intrinsic_load_image(ctx, intr, dst);
+      emit_intrinsic_load_image(ctx, intr, dst);
       break;
    case nir_intrinsic_image_store:
    case nir_intrinsic_bindless_image_store:



More information about the mesa-commit mailing list