On Sat, Dec 10, 2011 at 11:34 AM, Dave Airlie <airl...@gmail.com> wrote: > From: Dave Airlie <airl...@redhat.com> > > The piglit draw-pixel-with-texture was asserting in the glsl->tgsi code, > due to 0 texture target, this makes sure the texture target is copied over > correctly when we copy instructions around. > > Signed-off-by: Dave Airlie <airl...@redhat.com> > --- > src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 4 +++- > 1 files changed, 3 insertions(+), 1 deletions(-) > > diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp > b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp > index 6cc655d..68eaddc 100644 > --- a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp > +++ b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp > @@ -3786,6 +3786,7 @@ get_pixel_transfer_visitor(struct st_fragment_program > *fp, > * new visitor. */ > foreach_iter(exec_list_iterator, iter, original->instructions) { > glsl_to_tgsi_instruction *inst = (glsl_to_tgsi_instruction *)iter.get(); > + glsl_to_tgsi_instruction *newinst; > st_src_reg src_regs[3]; > > if (inst->dst.file == PROGRAM_OUTPUT) > @@ -3803,7 +3804,8 @@ get_pixel_transfer_visitor(struct st_fragment_program > *fp, > prog->InputsRead |= BITFIELD64_BIT(src_regs[i].index); > } > > - v->emit(NULL, inst->op, inst->dst, src_regs[0], src_regs[1], > src_regs[2]); > + newinst = v->emit(NULL, inst->op, inst->dst, src_regs[0], src_regs[1], > src_regs[2]); > + newinst->tex_target = inst->tex_target; > } > > /* Make modifications to fragment program info. */
Looks good to me. I had started to look into the glDrawPixels failures and found tex_target to be zero. I didn't know where it was supposed to come from though. Reviewed-by: Brian Paul <bri...@vmware.com> _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev