mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-29 08:00:12 +01:00
freedreno/a4xx: constify the shader variants
Most of the driver just needs read-only access, so constify.. Signed-off-by: Rob Clark <robclark@freedesktop.org>
This commit is contained in:
parent
d9395e4ed8
commit
5b955f09f7
4 changed files with 13 additions and 13 deletions
|
|
@ -328,7 +328,7 @@ fd4_emit_vertex_bufs(struct fd_ringbuffer *ring, struct fd4_emit *emit)
|
|||
int32_t i, j, last = -1;
|
||||
uint32_t total_in = 0;
|
||||
const struct fd_vertex_state *vtx = emit->vtx;
|
||||
struct ir3_shader_variant *vp = fd4_emit_get_vp(emit);
|
||||
const struct ir3_shader_variant *vp = fd4_emit_get_vp(emit);
|
||||
unsigned vertex_regid = regid(63, 0);
|
||||
unsigned instance_regid = regid(63, 0);
|
||||
unsigned vtxcnt_regid = regid(63, 0);
|
||||
|
|
@ -460,8 +460,8 @@ void
|
|||
fd4_emit_state(struct fd_context *ctx, struct fd_ringbuffer *ring,
|
||||
struct fd4_emit *emit)
|
||||
{
|
||||
struct ir3_shader_variant *vp = fd4_emit_get_vp(emit);
|
||||
struct ir3_shader_variant *fp = fd4_emit_get_fp(emit);
|
||||
const struct ir3_shader_variant *vp = fd4_emit_get_vp(emit);
|
||||
const struct ir3_shader_variant *fp = fd4_emit_get_fp(emit);
|
||||
uint32_t dirty = emit->dirty;
|
||||
|
||||
emit_marker(ring, 5);
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@ struct fd4_emit {
|
|||
bool no_decode_srgb;
|
||||
|
||||
/* cached to avoid repeated lookups of same variants: */
|
||||
struct ir3_shader_variant *vp, *fp;
|
||||
const struct ir3_shader_variant *vp, *fp;
|
||||
/* TODO: other shader stages.. */
|
||||
};
|
||||
|
||||
|
|
@ -70,7 +70,7 @@ static inline enum a4xx_color_fmt fd4_emit_format(struct pipe_surface *surf)
|
|||
return fd4_pipe2color(surf->format);
|
||||
}
|
||||
|
||||
static inline struct ir3_shader_variant *
|
||||
static inline const struct ir3_shader_variant *
|
||||
fd4_emit_get_vp(struct fd4_emit *emit)
|
||||
{
|
||||
if (!emit->vp) {
|
||||
|
|
@ -80,7 +80,7 @@ fd4_emit_get_vp(struct fd4_emit *emit)
|
|||
return emit->vp;
|
||||
}
|
||||
|
||||
static inline struct ir3_shader_variant *
|
||||
static inline const struct ir3_shader_variant *
|
||||
fd4_emit_get_fp(struct fd4_emit *emit)
|
||||
{
|
||||
if (!emit->fp) {
|
||||
|
|
|
|||
|
|
@ -462,7 +462,7 @@ ir3_shader_disasm(struct ir3_shader_variant *so, uint32_t *bin)
|
|||
#include "freedreno_resource.h"
|
||||
|
||||
static void
|
||||
emit_user_consts(struct fd_context *ctx, struct ir3_shader_variant *v,
|
||||
emit_user_consts(struct fd_context *ctx, const struct ir3_shader_variant *v,
|
||||
struct fd_ringbuffer *ring, struct fd_constbuf_stateobj *constbuf)
|
||||
{
|
||||
const unsigned index = 0; /* user consts are index 0 */
|
||||
|
|
@ -500,7 +500,7 @@ emit_user_consts(struct fd_context *ctx, struct ir3_shader_variant *v,
|
|||
}
|
||||
|
||||
static void
|
||||
emit_ubos(struct fd_context *ctx, struct ir3_shader_variant *v,
|
||||
emit_ubos(struct fd_context *ctx, const struct ir3_shader_variant *v,
|
||||
struct fd_ringbuffer *ring, struct fd_constbuf_stateobj *constbuf)
|
||||
{
|
||||
uint32_t offset = v->first_driver_param + IR3_UBOS_OFF;
|
||||
|
|
@ -529,7 +529,7 @@ emit_ubos(struct fd_context *ctx, struct ir3_shader_variant *v,
|
|||
}
|
||||
|
||||
static void
|
||||
emit_immediates(struct fd_context *ctx, struct ir3_shader_variant *v,
|
||||
emit_immediates(struct fd_context *ctx, const struct ir3_shader_variant *v,
|
||||
struct fd_ringbuffer *ring)
|
||||
{
|
||||
int size = v->immediates_count;
|
||||
|
|
@ -553,7 +553,7 @@ emit_immediates(struct fd_context *ctx, struct ir3_shader_variant *v,
|
|||
|
||||
/* emit stream-out buffers: */
|
||||
static void
|
||||
emit_tfbos(struct fd_context *ctx, struct ir3_shader_variant *v,
|
||||
emit_tfbos(struct fd_context *ctx, const struct ir3_shader_variant *v,
|
||||
struct fd_ringbuffer *ring)
|
||||
{
|
||||
/* streamout addresses after driver-params: */
|
||||
|
|
@ -584,7 +584,7 @@ emit_tfbos(struct fd_context *ctx, struct ir3_shader_variant *v,
|
|||
}
|
||||
|
||||
static uint32_t
|
||||
max_tf_vtx(struct fd_context *ctx, struct ir3_shader_variant *v)
|
||||
max_tf_vtx(struct fd_context *ctx, const struct ir3_shader_variant *v)
|
||||
{
|
||||
struct fd_streamout_stateobj *so = &ctx->streamout;
|
||||
struct pipe_stream_output_info *info = &v->shader->stream_output;
|
||||
|
|
@ -629,7 +629,7 @@ max_tf_vtx(struct fd_context *ctx, struct ir3_shader_variant *v)
|
|||
}
|
||||
|
||||
void
|
||||
ir3_emit_consts(struct ir3_shader_variant *v, struct fd_ringbuffer *ring,
|
||||
ir3_emit_consts(const struct ir3_shader_variant *v, struct fd_ringbuffer *ring,
|
||||
struct fd_context *ctx, const struct pipe_draw_info *info, uint32_t dirty)
|
||||
{
|
||||
if (dirty & (FD_DIRTY_PROG | FD_DIRTY_CONSTBUF)) {
|
||||
|
|
|
|||
|
|
@ -258,7 +258,7 @@ void ir3_shader_disasm(struct ir3_shader_variant *so, uint32_t *bin);
|
|||
|
||||
struct fd_ringbuffer;
|
||||
struct fd_context;
|
||||
void ir3_emit_consts(struct ir3_shader_variant *v, struct fd_ringbuffer *ring,
|
||||
void ir3_emit_consts(const struct ir3_shader_variant *v, struct fd_ringbuffer *ring,
|
||||
struct fd_context *ctx, const struct pipe_draw_info *info, uint32_t dirty);
|
||||
|
||||
static inline const char *
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue