From ec646e465493ffc12caeccad01a9333f82e85517 Mon Sep 17 00:00:00 2001 From: Matt Turner Date: Sun, 21 Apr 2013 00:18:11 -0700 Subject: [PATCH] i965: Apply CMP NULL {Switch} work-around to other Gen7s. Listed in the restrictions section of CMP, but not on the work-arounds page. Reviewed-by: Kenneth Graunke --- src/mesa/drivers/dri/i965/brw_eu_emit.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c index 704f219..dda562f 100644 --- a/src/mesa/drivers/dri/i965/brw_eu_emit.c +++ b/src/mesa/drivers/dri/i965/brw_eu_emit.c @@ -1677,8 +1677,11 @@ void brw_CMP(struct brw_compile *p, /* Item WaCMPInstNullDstForcesThreadSwitch in the Haswell Bspec workarounds * page says: * "Any CMP instruction with a null destination must use a {switch}." + * + * It also applies to other Gen7 platforms (IVB, BYT) even though it isn't + * mentioned on their work-arounds pages. */ - if (intel->is_haswell) { + if (intel->gen == 7) { if (dest.file == BRW_ARCHITECTURE_REGISTER_FILE && dest.nr == BRW_ARF_NULL) { insn->header.thread_control = BRW_THREAD_SWITCH; -- 2.7.4