16:18 karolherbst: imirkin: what's the highest we support on nv30?
16:18 imirkin: the highest what?
16:18 karolherbst: I see GLSL 1.2, but...
16:18 karolherbst: ehh OpenGL
16:18 imirkin: nv30 is GL 1.5
16:18 imirkin: no NPOT support
16:19 karolherbst: ahh, right
16:19 imirkin: it does support shaders in theory
16:19 karolherbst: sounds very very annoying to emulate
16:19 imirkin: but in practice i dunno how exposed that ends up being
16:19 imirkin: basically impossible for GL 2.0, but it's achievable for GLES 2.0
16:19 imirkin: of course it's also missing separate blend funcs for GLES 2.0
16:20 karolherbst: mhh
16:20 karolherbst: don't we have sw emulation for that in mesa?
16:20 imirkin: (GLES 2.0 doesn't require wrapping modes to work for NPOT? or something like that)
16:20 imirkin: for what?
16:20 karolherbst: separate blend funcs?
16:20 imirkin: sure ... along with the rest of GL
16:20 karolherbst: :D
16:21 karolherbst: right
16:21 imirkin: you'd have to replace the whole frontend pipeline with swrast
16:21 imirkin: totally achievable, of course
16:21 imirkin: afaik that's something akin to what the blob did
16:21 imirkin: once you fell off the hw-supported path
16:21 karolherbst: yeah
16:21 imirkin: you basically got swrast
16:21 imirkin: right now we support using gallivm for swtnl
16:21 karolherbst: apple did something similiar back at the days, seems like replacing bits with llvm was the best thing ever existing or something
16:22 imirkin: er, make that "draw", not gallivm (although that is in turn used by draw)
16:22 imirkin: nv30_draw.c has that integration iirc
16:23 imirkin: https://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/drivers/nouveau/nv30/nv30_draw.c#n378
16:23 imirkin: and then there's some logic to hook up the hw rast to the new outputs from draw
16:23 imirkin: i.e. passing them through directly through the vertex stage
16:24 imirkin: https://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/drivers/nouveau/nv30/nv30_state_validate.c#n484
16:24 imirkin: that's where we sort out which tnl to use -- hwtnl or swtnl
16:24 karolherbst: interesting
16:25 karolherbst: yeah.. I was mainly asking because somebody asked on twitter and I didn't know the answer :)
16:26 imirkin: you can still use ARB_*_program
16:26 imirkin: as well as ARB_shading_language_100 or whatever
16:30 karolherbst: mhhhh
16:31 karolherbst: yeah.. right, but I think it was more a question of "this application needs GL 2.1, does this hw support it?"
16:31 imirkin: this hw supports some of it ;)
16:31 imirkin: i wouldn't be surprised if the blob exposed GL 2.1
16:32 karolherbst: it also does support some of GL 4.6 :P
16:32 imirkin: yup
16:32 imirkin: sure does