[Mesa-dev] [PATCH] i965: Apply CMP NULL {Switch} work-around to other Gen7s.
Matt Turner
mattst88 at gmail.com
Sun Apr 21 00:19:22 PDT 2013
Listed in the restrictions section of CMP, but not on the work-arounds
page.
---
src/mesa/drivers/dri/i965/brw_eu_emit.c | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c
index 704f219..f379263 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, VLV) 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;
--
1.7.8.6
More information about the mesa-dev
mailing list