i965: Fix writemask != 0 assertions on Sandybridge.
[mesa.git] / src / mesa / drivers / dri / i965 / brw_eu_emit.c
index cce87522f8b74f15a7f7526f39679519d7727808..7ed3df0e5f8f6117904fa476bdcb0702cc18552c 100644 (file)
@@ -126,8 +126,10 @@ brw_set_dest(struct brw_compile *p, struct brw_instruction *insn,
       else {
         insn->bits1.da16.dest_subreg_nr = dest.subnr / 16;
         insn->bits1.da16.dest_writemask = dest.dw1.bits.writemask;
-         assert(dest.dw1.bits.writemask != 0 ||
-                dest.file == BRW_ARCHITECTURE_REGISTER_FILE);
+         if (dest.file == BRW_GENERAL_REGISTER_FILE ||
+             dest.file == BRW_MESSAGE_REGISTER_FILE) {
+            assert(dest.dw1.bits.writemask != 0);
+         }
         /* From the Ivybridge PRM, Vol 4, Part 3, Section 5.2.4.1:
          *    Although Dst.HorzStride is a don't care for Align16, HW needs
          *    this to be programmed as "01".