Mesa (master): i965/eu: Set UIP on ELSE instructions on Broadwell.

Kenneth Graunke kwg at kemper.freedesktop.org
Mon Aug 11 02:31:16 UTC 2014


Module: Mesa
Branch: master
Commit: a1c899c718758d68c112590d826e16c772ace195
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a1c899c718758d68c112590d826e16c772ace195

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Mon Jun 30 08:05:42 2014 -0700

i965/eu: Set UIP on ELSE instructions on Broadwell.

Broadwell adds UIP on ELSE instructions.

Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>
Reviewed-by: Matt Turner <mattst88 at gmail.com>

---

 src/mesa/drivers/dri/i965/brw_eu_emit.c |    6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c
index e102d4b..3ab4433 100644
--- a/src/mesa/drivers/dri/i965/brw_eu_emit.c
+++ b/src/mesa/drivers/dri/i965/brw_eu_emit.c
@@ -1391,6 +1391,12 @@ patch_IF_ELSE(struct brw_compile *p,
 	 /* The IF instruction's UIP and ELSE's JIP should point to ENDIF */
          brw_inst_set_uip(brw, if_inst, br * (endif_inst - if_inst));
          brw_inst_set_jip(brw, else_inst, br * (endif_inst - else_inst));
+         if (brw->gen >= 8) {
+            /* Since we don't set branch_ctrl, the ELSE's JIP and UIP both
+             * should point to ENDIF.
+             */
+            brw_inst_set_uip(brw, else_inst, br * (endif_inst - else_inst));
+         }
       }
    }
 }




More information about the mesa-commit mailing list