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 <t...@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@lists.freedesktop.org >> http://lists.freedesktop.org/mailman/listinfo/mesa-dev > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev