20:19anarsoul: enunes: for your "remove nir_legacy" MR, can you share examples of the shaders that regressed?
20:24enunes: from what I saw these are the shaders that arrived to the backend not with nir ops to be folded but with the nir flags like "legacy_fneg" set and now that we changed the trivialize pass don't have that anymore
20:24enunes: so now they are the cases like neg on register which are hard to optimize after we convert everything to ppir ir
20:25enunes: lets see if I can find a relatively simple one
20:26anarsoul: it's 12.5% increase in instructions for worst case
20:28anarsoul: enunes: are we getting hit again by a non-existing copy prop pass for ppir? :)
20:28enunes: I guess that is like 7->8 or something, not 100->125
20:29anarsoul: enunes: in absolute numbers worst hit is 15 instructions
20:29anarsoul: HURT stats (abs) min: 1 max: 15 x̄: 3.57 x̃: 2
20:29enunes: definitely feels limited by ppir ir representation indeed
20:31enunes: this is the full report of the stats I posted there https://paste.centos.org/view/raw/6d8983ed
20:33anarsoul: instructions HURT: shaders/godot3.4/31-18.shader_test MESA_SHADER_FRAGMENT: 231 -> 246 (6.49%) (spills: 7 -> 15 (114.29%); fills: 24 -> 38 (58.33%))instructions HURT: shaders/yofrankie/105.shader_test MESA_SHADER_FRAGMENT: 159 -> 172 (8.18%)
20:34enunes: yeah I guess this just snowballs on a small change and spills become worse
20:34anarsoul: anyway, your changes are straightforward and clean, so I'm not oppositing to merge it
20:35enunes: with the final change it is true that some of the new foldings mask more of the losses of the new pass vs nir folding
20:57enunes: I guess while I'm at it I'll take another look to see if we can still save some of the register cases, today I was just focusing on tracking down the remaining regressions with that current code