Skip to content

freedreno/ir3: IR3_PASS(), ir3_validate(), and other cleanups

Rob Clark requested to merge robclark/mesa:wip/ir3-pass into master

This is mostly standardizing the pass interface and adding an IR3_PASS() macro, which conditionally dumps the ir (if IR3_SHADER_DEBUG=optmsgs) if the pass changed anything.

It also makes cf/cp/dce iterative which slightly helps a couple shaders.. but the purpose is mainly to allow some further cleanup by pulling out internal iteration from the passes themselves (not done yet).


update: also added a validate pass, some helpers to maintain proper src/dst type information, etc. Which does effect shader-db some, mostly because it fixes cases where the cp pass would see src/dst types not matching even though a conversion was folded.

Edited by Rob Clark

Merge request reports