Re: [Beignet] [PATCH] GBE: fix half immediate negate assert.

2016-10-20 Thread Pan, Xiuli
LGTM!
Thanks!

-Original Message-
From: Beignet [mailto:beignet-boun...@lists.freedesktop.org] On Behalf Of 
rong.r.y...@intel.com
Sent: Sunday, September 18, 2016 10:50 AM
To: beignet@lists.freedesktop.org
Cc: Luo, Xionghu ; Yang, Rong R 
Subject: [Beignet] [PATCH] GBE: fix half immediate negate assert.

From: Yang Rong 

Also add double immediate negate support.

Signed-off-by: Yang Rong 
---
 backend/src/backend/gen_register.hpp | 5 +
 1 file changed, 5 insertions(+)

diff --git a/backend/src/backend/gen_register.hpp 
b/backend/src/backend/gen_register.hpp
index bbea761..a8eb2e4 100644
--- a/backend/src/backend/gen_register.hpp
+++ b/backend/src/backend/gen_register.hpp
@@ -1267,6 +1267,11 @@ namespace gbe
 } else if (reg.type == GEN_TYPE_W) {
   const uint16_t uw = reg.value.ud & 0x;
   reg = GenRegister::immw(-(int16_t)uw);
+} else if (reg.type == GEN_TYPE_HF_IMM) {
+  const uint16_t uw = reg.value.ud & 0x;
+  reg = GenRegister::immh(uw ^ 0x8000);
+} else if (reg.type == GEN_TYPE_DF_IMM) {
+  reg.value.df = -reg.value.df;
 } else
   NOT_SUPPORTED;
   }
-- 
1.9.1

___
Beignet mailing list
Beignet@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/beignet
___
Beignet mailing list
Beignet@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/beignet


[Beignet] [PATCH] GBE: fix half immediate negate assert.

2016-09-17 Thread rong . r . yang
From: Yang Rong 

Also add double immediate negate support.

Signed-off-by: Yang Rong 
---
 backend/src/backend/gen_register.hpp | 5 +
 1 file changed, 5 insertions(+)

diff --git a/backend/src/backend/gen_register.hpp 
b/backend/src/backend/gen_register.hpp
index bbea761..a8eb2e4 100644
--- a/backend/src/backend/gen_register.hpp
+++ b/backend/src/backend/gen_register.hpp
@@ -1267,6 +1267,11 @@ namespace gbe
 } else if (reg.type == GEN_TYPE_W) {
   const uint16_t uw = reg.value.ud & 0x;
   reg = GenRegister::immw(-(int16_t)uw);
+} else if (reg.type == GEN_TYPE_HF_IMM) {
+  const uint16_t uw = reg.value.ud & 0x;
+  reg = GenRegister::immh(uw ^ 0x8000);
+} else if (reg.type == GEN_TYPE_DF_IMM) {
+  reg.value.df = -reg.value.df;
 } else
   NOT_SUPPORTED;
   }
-- 
1.9.1

___
Beignet mailing list
Beignet@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/beignet