On 30.12.2015 13:44, Krzysztof A. Sobiecki wrote:
Nicolai Hähnle <nhaeh...@gmail.com> writes:
On 30.12.2015 08:42, Krzysztof A. Sobiecki wrote:
Nicolai Hähnle <nhaeh...@gmail.com> writes:
On 29.12.2015 14:27, Krzysztof A. Sobiecki wrote:
From: Krzysztof Sobiecki <sob...@gmail.com>
ALIGN_DIVUP is a driver specific(r600g) macro that duplicates DIV_ROUND_UP
functionality.
Replacing it with DIV_ROUND_UP eliminates this problems.
Those macros are actually slightly different, and the assembly
generated by the ALIGN_DIVUP looks clearly better to me.
I remember seeing a very long thread about this not so long ago - what
was the resolution there?
Cheers,
Nicolai
I would like to remove ALIGN_DIVUP first and then debate with
implementation DIV_ROUND_UP should use.
btw. I prefer 1 + ((x - 1) / y)
That produces an incorrect result when x is an unsigned type and equal
to 0 -- and that is something that existing code definitely relies on.
Cheers,
Nicolai
Then what about (x / y) + (i % y != 0)
Generates similar assembly to the DIV_ROUND_UP version.
Anyway, now that I look at it again I'd say just go ahead and add my
R-b. Yes, the assembly looks slightly worse, but only slightly, and
avoiding surprises with overflows down the line seems like a good idea.
Cheers,
Nicolai
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev