02:50bazzy: I haven't tested the recent fix to my screen flicker bug extensively yet, but I feel that's behind me now. I want to thank each and everyone in here that helped me out during my first time in #nouveau -- Thanks to RSpliet pmoreau karolherbst imirkin mwk and gnarface. I hope I got everyone. Happy holidays!
17:37karolherbst: ui, actually found a codegen bug: cube arrays also have 3 args, not 3+1. Not quite sure if some codegen internal thing depends on that being 4, but...
17:41karolherbst: that's because those arg is not a vector, but texel coordinate + face index
17:42pmoreau: imirkin: How would you prefer the renaming series to look like: one single patch that renames the files + renames the namespaces (nv50_ir -> nvir), or one patch for each, or something else?
17:43karolherbst: imirkin: maybe now you know why that texture grad didn't work out for cube map arrays?
17:44AndrewR: Hi all! There is syslog about two nouveau freezes (machine was powered down by ACPI -so, only GPU freezed): https://www.pastebin.ca/3951807 . First hang was after 1+ day of uptime, and second just after two hours ...
17:45karolherbst: imirkin: because cube map arrays == cube map in terms of accessing, there is no additional dimension for access
17:45karolherbst: for cube map arrays that is
17:46karolherbst: and that handleManualTXD kind of depended on the fact, that an array has one another dimension
17:47karolherbst: pmoreau: uhm... probably tomorrow or the day after, I will work on adding a lowering helper, because this is like the only big thing left I have to take care of (64bit integer lowering)
17:48pmoreau: karolherbst: Cool! I was going to have a quick look at it for the Split64BitOpThing, but I’ll let you look into it then ;-)
17:49karolherbst: I was more thinking about moving the lowering in from_tgsi into common code
17:49pmoreau: I’ll let you create the files and such, and I’ll just scheme in and plug in my thing in it
17:50karolherbst: like i64ABS
17:52pmoreau: Sounds good. I’ll do some checking on my 64-bit integer constant propagation and send a pull request for it.
17:53pmoreau: Where do you think the handling of `cvt u64 s64` should be happening? During the legalisation of SSA, or legalisation pre-SSA?
18:56pmoreau:does not understand how CTS image tests can succeed when images aren’t supported/fully implemented
18:57pmoreau: Ah, I found how to make things work without implementing them: run the tests on another driver/GPU ;-)
20:19karolherbst: pmoreau: everything we do in from_tgsi should be moved in pre SSA
20:20karolherbst: we should keep changes minima;
20:20karolherbst: pmoreau: well, there are a lot of false positives. even piglit is full of those
21:23pmoreau: karolherbst: It seems like a good idea to keep changes minimal.
21:34karolherbst: pmoreau: I know, but we should at least copy it
21:34karolherbst: it was just to point out what we will need in the end
21:34karolherbst: but the hepler should also be SSA compatible
21:40pmoreau: 38% success rate for the basic test of the CTS. Almost half of the failing ones are linked to images.
21:40karolherbst: well the math ones should have a better rate
21:41pmoreau: Maybe, or they are all missing one or two opcodes. :-D
21:41pmoreau: But they should be rather easy to implement.
21:58karolherbst: pmoreau: I shouldn't have kept the most annoying issues until the end :(
22:00pmoreau: karolherbst: Cause they are extra annoying? :-)
22:00karolherbst: something like that
22:00karolherbst: and important
22:00karolherbst: like the interpolation things in arb_gpu_shader5
22:01karolherbst: those are just expressed in an annoying way in nir
22:01karolherbst: but I could just lower it away actually with a nir pass
22:01karolherbst: well basically they have opcoodes for the centorid and the other thing
22:01karolherbst: but... for us it is just a flag on pinterp
22:02karolherbst: the nir variable accessed tells me this though
22:02karolherbst: so I think I can just go through the nir shader and replace those ops with the "normal" ones and just check the variable for the mode falgs
22:04pmoreau: IIRC, those are decorations in SPIR-V.
22:35karolherbst: pmoreau: I think I want to remove all the lowering logic out of the IR translators
22:35karolherbst: if they want to use a 64bit version of an OP, where we have no hardware supporting it, I don't see why it is the resonsibility of the translator to know that
22:35pmoreau: That seems look a good idea.
22:36karolherbst: and there is also things like OP_VOTE which has only u32 results
22:36karolherbst: but nir wants a 64bit one
22:36pmoreau:Time to solve that out-of-SSA issue.
22:36pmoreau: There should be a u64 one, at least on recent generations
22:37karolherbst: yeah, doesn't matter really
22:37karolherbst: because the translator shouldn't care
22:37karolherbst: exactly because in the future it might be valid
22:37karolherbst: or maybe never
22:37pmoreau: Hum, probably note since you vote within a warp, which are still 32 threads.
22:37karolherbst: but translators should be dump
22:39karolherbst: I would even say that we should have two SSA stages: SSA -> make hw compatible -> SSA again
22:39karolherbst: or at least the opts
22:40karolherbst: well bad wording there
22:41pmoreau: Isn’t that what the legalisation passes are for?
23:13karolherbst: pmoreau: I meant it differently. Like for some lowerings you never know if you want to do theam before SSA opts or after
23:13karolherbst: there are a few things you could do again, like CSE
23:14karolherbst: but maybe when somebody finds some time, we could try to decouple the passes and remove dependencies. Or make them more visible
23:14karolherbst: one good example is pow
23:15karolherbst: pow gets lowered into lg2/mul/ex2
23:15karolherbst: you could do smart opts for pow with constants
23:15karolherbst: or you could do other things
23:16karolherbst: but you can also optimize the lowered version with something which came before/after
23:46pmoreau: local_arg_def is not there yet: it generates an ILLEGAL_INSTR_PARAM2 error, causes a buffer eviction to fail, the card is locked up and I have a full core at 100% trying to flush some CPU TLB. \o/
23:52pmoreau: karolherbst: Want to try out that test on your laptop? O:-)
23:52karolherbst: I would rather not to