https://bugs.freedesktop.org/show_bug.cgi?id=83570

--- Comment #13 from Roland Scheidegger <srol...@vmware.com> ---
(In reply to comment #12)
> Roland,
>   Perhaps you can help me here. I'm looking at udiv_emit_cpu and I'm just
> not getting it. The comment says:
> 
> /* udiv by zero is guaranteed to return 0xffffffff */
> 
> but the way I read it, udiv by zero returns the numerator. Am I missing
> something?

Well in the end it is "ored" with the comparison mask, hence it's going to be
all ones (comparison masks are either all ones or all zeros). So the first or
is there to make sure the zero in the division gets replaced by something else
(all ones because this is easiest) so it doesn't crash, and the second or is
there to make sure the result is all ones (because d3d10 requires this result,
but since d3d10 lacks signed integer division there's not really any such
requirement for idiv).

-- 
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to