[Beignet] [PATCH 03/10] OCL20: add ir register enqueuebufptr for enqueue global buffer.

Yang Rong rong.r.yang at intel.com
Thu Mar 17 10:53:51 UTC 2016


Signed-off-by: Yang Rong <rong.r.yang at intel.com>
---
 backend/src/backend/program.h | 1 +
 backend/src/ir/profile.cpp    | 3 ++-
 backend/src/ir/profile.hpp    | 3 ++-
 3 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/backend/src/backend/program.h b/backend/src/backend/program.h
index a690e3d..8f1ac66 100644
--- a/backend/src/backend/program.h
+++ b/backend/src/backend/program.h
@@ -107,6 +107,7 @@ enum gbe_curbe_type {
   GBE_CURBE_THREAD_ID,
   GBE_CURBE_CONSTANT_ADDRSPACE,
   GBE_CURBE_STACK_SIZE,
+  GBE_CURBE_ENQUEUE_BUF_POINTER,
   GBE_GEN_REG,
 };
 
diff --git a/backend/src/ir/profile.cpp b/backend/src/ir/profile.cpp
index 0907d76..0daf28f 100644
--- a/backend/src/ir/profile.cpp
+++ b/backend/src/ir/profile.cpp
@@ -47,7 +47,7 @@ namespace ir {
         "dwblockip",
         "threadid",
         "constant_addrspace_start",
-        "stack_size"
+        "stack_size", "enqueue_buffer_pointer",
     };
 
 #if GBE_DEBUG
@@ -96,6 +96,7 @@ namespace ir {
       DECL_NEW_REG(FAMILY_DWORD, threadid, 1, GBE_CURBE_THREAD_ID);
       DECL_NEW_REG(FAMILY_QWORD, constant_addrspace, 1, GBE_CURBE_CONSTANT_ADDRSPACE);
       DECL_NEW_REG(FAMILY_QWORD, stacksize, 1, GBE_CURBE_STACK_SIZE);
+      DECL_NEW_REG(FAMILY_QWORD, enqueuebufptr, 1, GBE_CURBE_ENQUEUE_BUF_POINTER);
     }
 #undef DECL_NEW_REG
 
diff --git a/backend/src/ir/profile.hpp b/backend/src/ir/profile.hpp
index b093adf..ad92304 100644
--- a/backend/src/ir/profile.hpp
+++ b/backend/src/ir/profile.hpp
@@ -77,7 +77,8 @@ namespace ir {
     static const Register threadid = Register(33); // the thread id of this thread.
     static const Register constant_addrspace = Register(34);  // starting address of program-scope constant
     static const Register stacksize = Register(35); // stack buffer total size
-    static const uint32_t regNum = 36;             // number of special registers
+    static const Register enqueuebufptr = Register(36); // enqueue buffer address .
+    static const uint32_t regNum = 37;             // number of special registers
     extern const char *specialRegMean[];           // special register name.
   } /* namespace ocl */
 
-- 
1.9.1



More information about the Beignet mailing list