i965: Gen6 no longer has the IFF instruction; always use IF.
authorEric Anholt <eric@anholt.net>
Mon, 4 Oct 2010 22:09:18 +0000 (15:09 -0700)
committerEric Anholt <eric@anholt.net>
Wed, 6 Oct 2010 17:09:45 +0000 (10:09 -0700)
src/mesa/drivers/dri/i965/brw_eu_emit.c

index 5954135..fbc6894 100644 (file)
@@ -899,9 +899,11 @@ void brw_ENDIF(struct brw_compile *p,
        * instruction respectively.
        */
       if (patch_insn->header.opcode == BRW_OPCODE_IF) {
-        /* Automagically turn it into an IFF:
-         */
-        patch_insn->header.opcode = BRW_OPCODE_IFF;
+        if (intel->gen < 6) {
+           /* Automagically turn it into an IFF:
+            */
+           patch_insn->header.opcode = BRW_OPCODE_IFF;
+        }
         patch_insn->bits3.if_else.jump_count = br * (insn - patch_insn + 1);
         patch_insn->bits3.if_else.pop_count = 0;
         patch_insn->bits3.if_else.pad0 = 0;