[Beignet] [PATCH] MAD compact instrcution could not support "absolute" attribute.

yan.wang at linux.intel.com yan.wang at linux.intel.com
Thu Feb 23 08:19:48 UTC 2017


From: Yan Wang <yan.wang at linux.intel.com>

If absolute of SRCs of MAD instruction is 1, doens't use compact
instruction.

Signed-off-by: Yan Wang <yan.wang at linux.intel.com>
---
 backend/src/backend/gen_insn_compact.cpp | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/backend/src/backend/gen_insn_compact.cpp b/backend/src/backend/gen_insn_compact.cpp
index 62fcb61..22305f7 100644
--- a/backend/src/backend/gen_insn_compact.cpp
+++ b/backend/src/backend/gen_insn_compact.cpp
@@ -804,6 +804,8 @@ namespace gbe {
     if( control_index == -1) return false;
     if( src0.negation + src1.negation + src2.negation > 1)
       return false;
+    if( src0.absolute + src1.absolute + src2.absolute > 0)
+      return false;
 
     GenCompactInstruction *insn = p->nextCompact(opcode);
     insn->src3Insn.bits1.control_index = control_index;
-- 
2.7.4



More information about the Beignet mailing list