freedreno/a6xx: Drop unused screen args

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24999>
This commit is contained in:
Rob Clark 2023-09-02 08:04:10 -07:00 committed by Marge Bot
parent 71fe3f1073
commit a11e3f35df
5 changed files with 28 additions and 35 deletions

View file

@ -109,7 +109,7 @@ cs_program_emit(struct fd_context *ctx, struct fd_ringbuffer *ring,
}
fd6_emit_shader(ctx, ring, v);
fd6_emit_immediates(ctx->screen, v, ring);
fd6_emit_immediates(v, ring);
}
template <chip CHIP>

View file

@ -350,18 +350,16 @@ fd6_emit_cs_user_consts(struct fd_context *ctx,
}
void
fd6_emit_immediates(struct fd_screen *screen,
const struct ir3_shader_variant *v,
fd6_emit_immediates(const struct ir3_shader_variant *v,
struct fd_ringbuffer *ring)
{
ir3_emit_immediates(screen, v, ring);
ir3_emit_immediates(v, ring);
}
void
fd6_emit_link_map(struct fd_screen *screen,
const struct ir3_shader_variant *producer,
const struct ir3_shader_variant *v,
fd6_emit_link_map(const struct ir3_shader_variant *producer,
const struct ir3_shader_variant *consumer,
struct fd_ringbuffer *ring)
{
ir3_emit_link_map(screen, producer, v, ring);
ir3_emit_link_map(producer, consumer, ring);
}

View file

@ -44,12 +44,10 @@ void fd6_emit_cs_driver_params(struct fd_context *ctx,
void fd6_emit_cs_user_consts(struct fd_context *ctx,
struct fd_ringbuffer *ring,
struct fd6_compute_state *cs) assert_dt;
void fd6_emit_immediates(struct fd_screen *screen,
const struct ir3_shader_variant *v,
void fd6_emit_immediates(const struct ir3_shader_variant *v,
struct fd_ringbuffer *ring) assert_dt;
void fd6_emit_link_map(struct fd_screen *screen,
const struct ir3_shader_variant *producer,
const struct ir3_shader_variant *v,
void fd6_emit_link_map(const struct ir3_shader_variant *producer,
const struct ir3_shader_variant *consumer,
struct fd_ringbuffer *ring) assert_dt;
#endif /* FD6_CONST_H */

View file

@ -598,7 +598,7 @@ setup_stateobj(struct fd_screen *screen, struct fd_ringbuffer *ring,
A6XX_SP_VS_CTRL_REG0_BRANCHSTACK(ir3_shader_branchstack_hw(vs)));
fd6_emit_shader(ctx, ring, vs);
fd6_emit_immediates(ctx->screen, vs, ring);
fd6_emit_immediates(vs, ring);
if (hs) {
fd6_emit_tess_bos(ctx->screen, ring, hs);
fd6_emit_tess_bos(ctx->screen, ring, ds);
@ -743,8 +743,8 @@ setup_stateobj(struct fd_screen *screen, struct fd_ringbuffer *ring,
A6XX_SP_HS_CTRL_REG0_BRANCHSTACK(ir3_shader_branchstack_hw(hs)));
fd6_emit_shader(ctx, ring, hs);
fd6_emit_immediates(ctx->screen, hs, ring);
fd6_emit_link_map(ctx->screen, vs, hs, ring);
fd6_emit_immediates(hs, ring);
fd6_emit_link_map(vs, hs, ring);
OUT_PKT4(ring, REG_A6XX_SP_DS_CTRL_REG0, 1);
OUT_RING(
@ -754,8 +754,8 @@ setup_stateobj(struct fd_screen *screen, struct fd_ringbuffer *ring,
A6XX_SP_DS_CTRL_REG0_BRANCHSTACK(ir3_shader_branchstack_hw(ds)));
fd6_emit_shader(ctx, ring, ds);
fd6_emit_immediates(ctx->screen, ds, ring);
fd6_emit_link_map(ctx->screen, hs, ds, ring);
fd6_emit_immediates(ds, ring);
fd6_emit_link_map(hs, ds, ring);
OUT_PKT4(ring, REG_A6XX_PC_TESS_NUM_VERTEX, 1);
OUT_RING(ring, hs->tess.tcs_vertices_out);
@ -1023,11 +1023,11 @@ setup_stateobj(struct fd_screen *screen, struct fd_ringbuffer *ring,
A6XX_SP_GS_CTRL_REG0_BRANCHSTACK(ir3_shader_branchstack_hw(gs)));
fd6_emit_shader(ctx, ring, gs);
fd6_emit_immediates(ctx->screen, gs, ring);
fd6_emit_immediates(gs, ring);
if (ds)
fd6_emit_link_map(ctx->screen, ds, gs, ring);
fd6_emit_link_map(ds, gs, ring);
else
fd6_emit_link_map(ctx->screen, vs, gs, ring);
fd6_emit_link_map(vs, gs, ring);
OUT_PKT4(ring, REG_A6XX_VPC_GS_PACK, 1);
OUT_RING(ring, A6XX_VPC_GS_PACK_POSITIONLOC(pos_loc) |
@ -1178,7 +1178,7 @@ setup_stateobj(struct fd_screen *screen, struct fd_ringbuffer *ring,
A6XX_VFD_CONTROL_6_PRIMID4PSEN)); /* VFD_CONTROL_6 */
if (!binning_pass)
fd6_emit_immediates(ctx->screen, fs, ring);
fd6_emit_immediates(fs, ring);
}
static void emit_interp_state(struct fd_ringbuffer *ring,

View file

@ -111,8 +111,7 @@ ir3_user_consts_size(struct ir3_ubo_analysis_state *state, unsigned *packets,
* constant buffer.
*/
static inline void
ir3_emit_constant_data(struct fd_screen *screen,
const struct ir3_shader_variant *v,
ir3_emit_constant_data(const struct ir3_shader_variant *v,
struct fd_ringbuffer *ring)
{
const struct ir3_const_state *const_state = ir3_const_state(v);
@ -308,8 +307,7 @@ ir3_emit_image_dims(struct fd_screen *screen,
}
static inline void
ir3_emit_immediates(struct fd_screen *screen,
const struct ir3_shader_variant *v,
ir3_emit_immediates(const struct ir3_shader_variant *v,
struct fd_ringbuffer *ring)
{
const struct ir3_const_state *const_state = ir3_const_state(v);
@ -331,30 +329,29 @@ ir3_emit_immediates(struct fd_screen *screen,
/* NIR constant data has the same lifetime as immediates, so upload it
* now, too.
*/
ir3_emit_constant_data(screen, v, ring);
ir3_emit_constant_data(v, ring);
}
static inline void
ir3_emit_link_map(struct fd_screen *screen,
const struct ir3_shader_variant *producer,
const struct ir3_shader_variant *v,
ir3_emit_link_map(const struct ir3_shader_variant *producer,
const struct ir3_shader_variant *consumer,
struct fd_ringbuffer *ring)
{
const struct ir3_const_state *const_state = ir3_const_state(v);
const struct ir3_const_state *const_state = ir3_const_state(consumer);
uint32_t base = const_state->offsets.primitive_map;
int size = DIV_ROUND_UP(v->input_size, 4);
int size = DIV_ROUND_UP(consumer->input_size, 4);
/* truncate size to avoid writing constants that shader
* does not use:
*/
size = MIN2(size + base, v->constlen) - base;
size = MIN2(size + base, consumer->constlen) - base;
/* convert out of vec4: */
base *= 4;
size *= 4;
if (size > 0)
emit_const_user(ring, v, base, size, producer->output_loc);
emit_const_user(ring, consumer, base, size, producer->output_loc);
}
/* emit stream-out buffers: */
@ -423,7 +420,7 @@ emit_common_consts(const struct ir3_shader_variant *v,
ir3_emit_user_consts(v, ring, constbuf);
ir3_emit_ubos(ctx, v, ring, constbuf);
if (shader_dirty)
ir3_emit_immediates(ctx->screen, v, ring);
ir3_emit_immediates(v, ring);
}
if (dirty & (FD_DIRTY_SHADER_PROG | FD_DIRTY_SHADER_IMAGE)) {