00:11 fdobridge: <g​ouz> @gfxstrand I did something similar for signed comparisons.
00:11 fdobridge: <g​ouz> But for unsigned i used another implementation using only bitwise operations.
00:13 fdobridge: <g​ouz> The target was to successfully implement uint division that transform feedback indirect drawing needs.
00:31 fdobridge: <g​fxstrand> right
00:31 fdobridge: <g​fxstrand> ugh
00:31 fdobridge: <g​fxstrand> Do we really need uint division?
00:31 fdobridge: <g​fxstrand> If we can just do += stride in our counter, I don't think we do
00:32 fdobridge: <g​fxstrand> But we do need a `<` for the limit instead of `!=`
08:18 fdobridge: <g​ouz> We read the byte count from the buffer and then divide by vertex stride to get the vertex count. I dont think we can do a simple += stride
08:24 fdobridge: <n​anokatze> perhaps you could use mesa's libdivide thing so you can get away with just mul, shift and add (it's first and foremost simpler) on mme instead of integer division
08:24 fdobridge: <n​anokatze> perhaps you could use mesa's libdivide thing so you can get away with just mul, shift and add (it's first and foremost simpler that way) on mme instead of integer division (edited)
08:25 fdobridge: <n​anokatze> perhaps you could use mesa's libdivide thing so you can get away with just mul, shift and add (it seems it would be first and foremost simpler that way) on mme instead of integer division (edited)
08:31 fdobridge: <n​anokatze> perhaps you could use mesa's libdivide thing so you can get away with just shifts and adds (it seems it would be first and foremost simpler that way) on mme instead of integer division (edited)
08:31 fdobridge: <n​anokatze> util_compute_fast_udiv_info
08:31 fdobridge: <n​anokatze> perhaps you could use mesa's libdivide thing so you can get away with just shifts, adds and mul (it seems it would be first and foremost simpler that way) on mme instead of integer division (edited)
09:40 fdobridge: <g​ouz> @nanokatze thanks. I tried a similar way in the beginning, but I did not use 64bit integers like in util_compute_fast_udiv_info
09:40 fdobridge: <g​ouz> I will check if it's easy to implement in fermi mme
09:44 fdobridge: <g​ouz> When I get back from vulkanized
09:57 fdobridge: <g​ouz> When I get back from vulkanised (edited)
16:54 fdobridge: <g​ouz> Yeah it should be much cleaner and ultra fast to do it this way!
18:31 fdobridge: <g​fxstrand> That's what I did for ANV. Works quite well.