nir: fix typo in idiv lowering, causing large-udiv-udiv failures
authorIlia Mirkin <imirkin@alum.mit.edu>
Sun, 8 Nov 2015 18:43:07 +0000 (13:43 -0500)
committerRob Clark <robclark@freedesktop.org>
Wed, 18 Nov 2015 19:31:13 +0000 (14:31 -0500)
In nv50, and in the python script that Rob circulated, we do:

   bld.mkCmp(OP_SET, CC_GE, TYPE_U32, (s = bld.getSSA()), TYPE_U32, m, b);

Do the same in the nir div lowering pass. This fixes the large-udiv-udiv
piglit tests on freedreno.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Cc: mesa-stable@lists.freedesktop.org
Signed-off-by: Rob Clark <robclark@freedesktop.org>
src/glsl/nir/nir_lower_idiv.c

index c961178c53a7c71f86804e012db7743f1a4475af..3580ced0ac060d6a84eec95b6bd2ff8fac08d014 100644 (file)
@@ -96,7 +96,7 @@ convert_instr(nir_builder *bld, nir_alu_instr *alu)
    r = nir_imul(bld, q, b);
    r = nir_isub(bld, a, r);
 
-   r = nir_ige(bld, r, b);
+   r = nir_uge(bld, r, b);
    r = nir_b2i(bld, r);
 
    q = nir_iadd(bld, q, r);