----- Original Message -----
> ----- Original Message -----
> > From: José Fonseca <jfons...@vmware.com>
> > 
> > +            t->outputs[i] = ureg_writemask(t->outputs[i],
> > TGSI_WRITEMASK_X);
> 
> What happens when the application decides to write to any component other
> than X? The application writemask combined with the one above will yield an
> empty one. Are we making sure that such instructions are skipped?

Ah, good point. I've seen state trackers emiting empty writemasks in the past 
(due to the need to emulate complex instructions with smaller ones), and the 
driver then (llvmpipe) handled it just fine.

We could improve tgsi_ureg to automatically do nothing when writemask, 
therefore taking care of this issue for all state trackers.  It seems cleaner 
than checking for a potential empty writemasks all over the place.

Jose
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to