[Beignet] [PATCH] Backend: Refine replace src for write instruction

Xiuli Pan xiuli.pan at intel.com
Fri Sep 9 05:41:08 UTC 2016


From: Pan Xiuli <xiuli.pan at intel.com>

For write instruction src regs, they may be some header and need to be
replaced with nomask mov.

Signed-off-by: Pan Xiuli <xiuli.pan at intel.com>
---
 backend/src/backend/gen_insn_selection.cpp | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/backend/src/backend/gen_insn_selection.cpp b/backend/src/backend/gen_insn_selection.cpp
index 9a26cdc..d92c597 100644
--- a/backend/src/backend/gen_insn_selection.cpp
+++ b/backend/src/backend/gen_insn_selection.cpp
@@ -1096,6 +1096,9 @@ namespace gbe
         mov->state.flag = 0;
         mov->state.subFlag = 0;
       }
+      // This reg may be header of send message.
+      if (insn->isWrite())
+        mov->state.noMask = 1;
       if (this->isScalarReg(insn->src(regID).reg()))
         mov->state.noMask = 1;
       mov->dst(0) = gr;
-- 
2.7.4



More information about the Beignet mailing list