[Mesa-dev] Testing optimizer

Marek Olšák maraeo at gmail.com
Tue Dec 17 09:49:29 PST 2013


ST_DEBUG=tgsi ... is also useful. It dumps all shaders generated by
mesa_to_tgsi and glsl_to_tgsi and it's easier to read than the GLSL
IR.

Marek

On Tue, Dec 17, 2013 at 5:46 PM, Tom Stellard <tom at stellard.net> wrote:
> On Tue, Dec 17, 2013 at 09:57:31AM -0600, Patrick Baggett wrote:
>> Hi all,
>>
>> Is there a way to see the machine code that is generated by the GLSL
>> compiler for all GPU instruction sets? For example, I would like to know if
>> the optimizer optimizes certain (equivalent) constructs (or not), and avoid
>> them if possible. I know there is a lot to optimization on GPUs that I
>> don't know, but I'd still like to get some ballpark estimates. For example,
>> I'm curious whether:
>
> Each driver has its own environment variable for dumping machine code.
>
> llvmpipe: GALLIVM_DEBUG=asm (I think you need to build mesa
>                              with --enable-debug for this to work)
> r300g: RADEON_DEBUG=fp,vp
> r600g, radeonsi: R600_DEBUG=ps,vs
>
> I'm not sure what the other drivers use.
>
> -Tom
>
>>
>>     //let p1, p2, p3 be vec2 uniforms
>>
>>     vec4(p1, 0, 0) + vec4(p2, 0, 0) + vec4(p3, 0, 1)
>>
>> produces identical machine code as:
>>
>>     vec4(p1+p2+p3, 0, 1);
>>
>> for all architectures supported by Mesa.
>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list