16:44 anarsoul: enunes: have you had a chance to look into why migrating to nir_legacy hits shader-db so badly?
16:45 enunes: anarsoul: nope, still trying to figure out gpir
16:46 enunes: I think one of the many reasons is that dummy node to be created so that a register exists in the var_nodes stuff
16:46 enunes: but I didn't really do any sort of analysis of what goes on with the registers now
16:47 anarsoul: I see
16:47 enunes: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24216 also had similar initial results
16:48 enunes: we should probably move to the chasing helpers strategy when we can and drop the now-legacy stuff I guess
16:50 enunes: but with the time at hand, not sure really when that would happen after this initial push
16:54 anarsoul: yeah, but mali4x0 isn't the fastest GPU
16:54 anarsoul: with 20% perf regression we'll get a lot of bug reports once it gets into the next release
17:00 enunes: yep, so we might need some help if we are to stop being the blocker for this
22:25 enunes: anarsoul: wow how come this wasn't hit before https://gitlab.freedesktop.org/mesa/mesa/-/jobs/46264712#L4995
22:26 enunes: shader writes to gl_FragDepth which is a float...
22:27 enunes: I think we don't support that, still it's an assert which stops shader-db
22:27 anarsoul: no idea
22:28 anarsoul: gl_FragDepth still should be in .xyz
22:29 anarsoul: oh, or in .x
22:29 anarsoul: but yeah, it doesn't have a swizzle
22:29 anarsoul: so it probably needs a mov?
22:37 anarsoul: enunes: see how we handle nir_intrinsic_store_output
22:39 anarsoul: nope, it's all in regalloc
22:40 anarsoul: so basically if we set out_reg we have additional constraint on what register we can use
22:40 anarsoul: anyway, we can just hack it in nir.c
22:40 anarsoul: even if it's just a float (as in case of gl_FragDepth), we still need a whole vec4 reg
22:41 enunes: still trying to finish the register intrinsic stuff, I just threw that at CI to see if enabling shader-db there would be that one line
22:41 anarsoul: so write_mask should be u_bit_consecutive(0, 4); regardless of num_components
22:41 anarsoul: it's a bug in existing code
22:42 anarsoul: I'd say we can't set node->is_out for anything but color output
22:43 anarsoul: it has to be a mov, and dest should be a vec4 register