[Mesa-dev] [RFC] Solving the TGSI indirect addressing optimization problem

Marek Olšák maraeo at gmail.com
Mon Mar 11 18:48:30 PDT 2013

On Mon, Mar 11, 2013 at 1:44 PM, Christian König
<deathsimple at vodafone.de> wrote:
> Hi everybody,
> this problem has been open for quite some time now, with a bunch of different
> opinions and sometimes even patches floating on the list.
> The solutions proposed or implemented so far all more or less incomplete, so
> this approach was designed in mind with both completeness and compatibility
> with existing code.
> Over all it's just an implementation of what Tom Stellard named solution #4 in
> this eMail thread: http://lists.freedesktop.org/archives/mesa-dev/2013-January/033264.html

Hi Christian,

this is definitely not the solution #4. According to the TGSI dump
Christoph posted, it looks more like #3.

The solution #4 completely changes the temporary file such that it
becomes two-dimensional with the first index being a literal and the
second index being either a literal or ADDR[literal], and it would
always be like that regardless of whether drivers support that or not.
One-dimensional indexing of TEMP is not allowed. For backward
compatibility, the drivers that do not support it would only get a
single array declaration TEMP[0][0..n] and TEMP[0][...] would be
everywhere in the code.

I don't know much about TGSI internals, so I can't review this. I'd
just like to say that TGSI dumps should make sense (2D indexing should
be only allowed with 2D declarations) and tgsi_text_translate should
be able to do the reverse - convert the dumps back to TGSI tokens.


More information about the mesa-dev mailing list