Mesa (master): radeonsi: delete si_pm4_delete_state

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Sat Jan 30 20:59:51 UTC 2021


Module: Mesa
Branch: master
Commit: 11293d71f25eb03ee790958b566d82d834a3efff
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=11293d71f25eb03ee790958b566d82d834a3efff

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Wed Jan 27 18:06:57 2021 -0500

radeonsi: delete si_pm4_delete_state

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer at amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8794>

---

 src/gallium/drivers/radeonsi/si_pipe.c          |  2 +-
 src/gallium/drivers/radeonsi/si_state.c         |  6 +++---
 src/gallium/drivers/radeonsi/si_state.h         |  3 ---
 src/gallium/drivers/radeonsi/si_state_shaders.c | 22 +++++++++++-----------
 4 files changed, 15 insertions(+), 18 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_pipe.c b/src/gallium/drivers/radeonsi/si_pipe.c
index b508a4baeec..2297834afa4 100644
--- a/src/gallium/drivers/radeonsi/si_pipe.c
+++ b/src/gallium/drivers/radeonsi/si_pipe.c
@@ -213,7 +213,7 @@ static void si_destroy_context(struct pipe_context *context)
    if (sctx->cs_preamble_gs_rings)
       si_pm4_free_state(sctx, sctx->cs_preamble_gs_rings, ~0);
    for (i = 0; i < ARRAY_SIZE(sctx->vgt_shader_config); i++)
-      si_pm4_delete_state(sctx, vgt_shader_config, sctx->vgt_shader_config[i]);
+      si_pm4_free_state(sctx, sctx->vgt_shader_config[i], SI_STATE_IDX(vgt_shader_config));
 
    if (sctx->fixed_func_tcs_shader.cso)
       sctx->b.delete_tcs_state(&sctx->b, sctx->fixed_func_tcs_shader.cso);
diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c
index c36bb17ad27..8b0ed04881f 100644
--- a/src/gallium/drivers/radeonsi/si_state.c
+++ b/src/gallium/drivers/radeonsi/si_state.c
@@ -673,7 +673,7 @@ static void si_delete_blend_state(struct pipe_context *ctx, void *state)
    if (sctx->queued.named.blend == state)
       si_bind_blend_state(ctx, sctx->noop_blend);
 
-   si_pm4_delete_state(sctx, blend, (struct si_state_blend *)state);
+   si_pm4_free_state(sctx, (struct si_pm4_state*)state, SI_STATE_IDX(blend));
 }
 
 static void si_set_blend_color(struct pipe_context *ctx, const struct pipe_blend_color *state)
@@ -1040,7 +1040,7 @@ static void si_delete_rs_state(struct pipe_context *ctx, void *state)
       si_bind_rs_state(ctx, sctx->discard_rasterizer_state);
 
    FREE(rs->pm4_poly_offset);
-   si_pm4_delete_state(sctx, rasterizer, rs);
+   si_pm4_free_state(sctx, &rs->pm4, SI_STATE_IDX(rasterizer));
 }
 
 /*
@@ -1265,7 +1265,7 @@ static void si_delete_dsa_state(struct pipe_context *ctx, void *state)
    if (sctx->queued.named.dsa == state)
       si_bind_dsa_state(ctx, sctx->noop_dsa);
 
-   si_pm4_delete_state(sctx, dsa, (struct si_state_dsa *)state);
+   si_pm4_free_state(sctx, (struct si_pm4_state*)state, SI_STATE_IDX(dsa));
 }
 
 static void *si_create_db_flush_dsa(struct si_context *sctx)
diff --git a/src/gallium/drivers/radeonsi/si_state.h b/src/gallium/drivers/radeonsi/si_state.h
index f9d1bcdd407..68e97399596 100644
--- a/src/gallium/drivers/radeonsi/si_state.h
+++ b/src/gallium/drivers/radeonsi/si_state.h
@@ -484,9 +484,6 @@ struct si_buffer_resources {
          (sctx)->dirty_states &= ~SI_STATE_BIT(member);                                            \
    } while (0)
 
-#define si_pm4_delete_state(sctx, member, value)                                                   \
-   si_pm4_free_state(sctx, (struct si_pm4_state *)(value), SI_STATE_IDX(member))
-
 /* si_descriptors.c */
 void si_set_mutable_tex_desc_fields(struct si_screen *sscreen, struct si_texture *tex,
                                     const struct legacy_surf_level *base_level_info,
diff --git a/src/gallium/drivers/radeonsi/si_state_shaders.c b/src/gallium/drivers/radeonsi/si_state_shaders.c
index 7d6e51473d7..3809dced079 100644
--- a/src/gallium/drivers/radeonsi/si_state_shaders.c
+++ b/src/gallium/drivers/radeonsi/si_state_shaders.c
@@ -3169,37 +3169,37 @@ static void si_delete_shader(struct si_context *sctx, struct si_shader *shader)
       case MESA_SHADER_VERTEX:
          if (shader->key.as_ls) {
             assert(sctx->chip_class <= GFX8);
-            si_pm4_delete_state(sctx, ls, shader->pm4);
+            si_pm4_free_state(sctx, shader->pm4, SI_STATE_IDX(ls));
          } else if (shader->key.as_es) {
             assert(sctx->chip_class <= GFX8);
-            si_pm4_delete_state(sctx, es, shader->pm4);
+            si_pm4_free_state(sctx, shader->pm4, SI_STATE_IDX(es));
          } else if (shader->key.as_ngg) {
-            si_pm4_delete_state(sctx, gs, shader->pm4);
+            si_pm4_free_state(sctx, shader->pm4, SI_STATE_IDX(gs));
          } else {
-            si_pm4_delete_state(sctx, vs, shader->pm4);
+            si_pm4_free_state(sctx, shader->pm4, SI_STATE_IDX(vs));
          }
          break;
       case MESA_SHADER_TESS_CTRL:
-         si_pm4_delete_state(sctx, hs, shader->pm4);
+         si_pm4_free_state(sctx, shader->pm4, SI_STATE_IDX(hs));
          break;
       case MESA_SHADER_TESS_EVAL:
          if (shader->key.as_es) {
             assert(sctx->chip_class <= GFX8);
-            si_pm4_delete_state(sctx, es, shader->pm4);
+            si_pm4_free_state(sctx, shader->pm4, SI_STATE_IDX(es));
          } else if (shader->key.as_ngg) {
-            si_pm4_delete_state(sctx, gs, shader->pm4);
+            si_pm4_free_state(sctx, shader->pm4, SI_STATE_IDX(gs));
          } else {
-            si_pm4_delete_state(sctx, vs, shader->pm4);
+            si_pm4_free_state(sctx, shader->pm4, SI_STATE_IDX(vs));
          }
          break;
       case MESA_SHADER_GEOMETRY:
          if (shader->is_gs_copy_shader)
-            si_pm4_delete_state(sctx, vs, shader->pm4);
+            si_pm4_free_state(sctx, shader->pm4, SI_STATE_IDX(vs));
          else
-            si_pm4_delete_state(sctx, gs, shader->pm4);
+            si_pm4_free_state(sctx, shader->pm4, SI_STATE_IDX(gs));
          break;
       case MESA_SHADER_FRAGMENT:
-         si_pm4_delete_state(sctx, ps, shader->pm4);
+         si_pm4_free_state(sctx, shader->pm4, SI_STATE_IDX(ps));
          break;
       default:;
       }



More information about the mesa-commit mailing list