Reviewed-by: Marek Olšák <marek.ol...@amd.com> Marek
On Thu, Sep 8, 2016 at 10:30 PM, Rob Clark <robdcl...@gmail.com> wrote: > Makes it more consistent with vp/fp variants, and will be needed in a > following patch. > > Signed-off-by: Rob Clark <robdcl...@gmail.com> > --- > src/mesa/state_tracker/st_atom_shader.c | 2 +- > src/mesa/state_tracker/st_program.c | 12 ++++++------ > src/mesa/state_tracker/st_program.h | 3 +-- > 3 files changed, 8 insertions(+), 9 deletions(-) > > diff --git a/src/mesa/state_tracker/st_atom_shader.c > b/src/mesa/state_tracker/st_atom_shader.c > index c2e4fc8..3cf8992 100644 > --- a/src/mesa/state_tracker/st_atom_shader.c > +++ b/src/mesa/state_tracker/st_atom_shader.c > @@ -322,7 +322,7 @@ update_cp( struct st_context *st ) > assert(stcp->Base.Base.Target == GL_COMPUTE_PROGRAM_NV); > > key = st_get_basic_variant_key(st, &stcp->Base.Base); > - st->cp_variant = st_get_cp_variant(st, &stcp->tgsi, &stcp->variants, > &key); > + st->cp_variant = st_get_cp_variant(st, stcp, &key); > > st_reference_compprog(st, &st->cp, stcp); > > diff --git a/src/mesa/state_tracker/st_program.c > b/src/mesa/state_tracker/st_program.c > index 284cc22..41ccc20 100644 > --- a/src/mesa/state_tracker/st_program.c > +++ b/src/mesa/state_tracker/st_program.c > @@ -1685,15 +1685,15 @@ st_translate_compute_program(struct st_context *st, > */ > struct st_basic_variant * > st_get_cp_variant(struct st_context *st, > - struct pipe_compute_state *tgsi, > - struct st_basic_variant **variants, > + struct st_compute_program *stcp, > const struct st_basic_variant_key *key) > { > struct pipe_context *pipe = st->pipe; > + struct pipe_compute_state *tgsi = &stcp->tgsi; > struct st_basic_variant *v; > > /* Search for existing variant */ > - for (v = *variants; v; v = v->next) { > + for (v = stcp->variants; v; v = v->next) { > if (memcmp(&v->key, key, sizeof(*key)) == 0) { > break; > } > @@ -1708,8 +1708,8 @@ st_get_cp_variant(struct st_context *st, > v->key = *key; > > /* insert into list */ > - v->next = *variants; > - *variants = v; > + v->next = stcp->variants; > + stcp->variants = v; > } > } > > @@ -1955,7 +1955,7 @@ st_precompile_shader_variant(struct st_context *st, > case GL_COMPUTE_PROGRAM_NV: { > struct st_compute_program *p = (struct st_compute_program *)prog; > struct st_basic_variant_key key = st_get_basic_variant_key(st, prog); > - st_get_cp_variant(st, &p->tgsi, &p->variants, &key); > + st_get_cp_variant(st, p, &key); > break; > } > > diff --git a/src/mesa/state_tracker/st_program.h > b/src/mesa/state_tracker/st_program.h > index f4e572a..dd5a89b 100644 > --- a/src/mesa/state_tracker/st_program.h > +++ b/src/mesa/state_tracker/st_program.h > @@ -447,8 +447,7 @@ st_get_fp_variant(struct st_context *st, > > extern struct st_basic_variant * > st_get_cp_variant(struct st_context *st, > - struct pipe_compute_state *tgsi, > - struct st_basic_variant **variants, > + struct st_compute_program *p, > const struct st_basic_variant_key *key); > > extern struct st_basic_variant * > -- > 2.7.4 > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev