gallium: fixed modulo zero crashes in tgsi interpreter (v2)
authorMarius Gräfe <git@mgraefe.de>
Fri, 9 Jun 2017 13:39:00 +0000 (15:39 +0200)
committerRoland Scheidegger <sroland@vmware.com>
Sat, 10 Jun 2017 14:40:13 +0000 (16:40 +0200)
commitf3c0bbe18ac65d22b2630f89fc1628bfe79695d4
tree172915f2b2945aaa2aa425c9848147d34b714b47
parent29b9f357049ddd85f3423f9c68ee8ed6bebbd3c1
gallium: fixed modulo zero crashes in tgsi interpreter (v2)

softpipe throws integer division by zero exceptions on windows
when using % with integers in a geometry shader.

v2: Made error results consistent with existing div/mod zero handling in
    tgsi. 64 bit signed integer division by zero returns zero like in
    micro_idiv, unsigned returns ~0u like in micro_udiv.
    Modulo operations always set all result bits to one (like in
    micro_umod).

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
src/gallium/auxiliary/tgsi/tgsi_exec.c