Mesa (master): clover: Add semantic information to module:: argument for implicit parameter passing.

Francisco Jerez currojerez at kemper.freedesktop.org
Sat Oct 11 22:57:04 UTC 2014


Module: Mesa
Branch: master
Commit: 06139c56fa070f84a931a4ddbdb894c9e8d24f55
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=06139c56fa070f84a931a4ddbdb894c9e8d24f55

Author: Francisco Jerez <currojerez at riseup.net>
Date:   Wed Oct  8 17:32:18 2014 +0300

clover: Add semantic information to module::argument for implicit parameter passing.

Reviewed-by: Jan Vesely <jan.vesely at rutgers.edu>

---

 src/gallium/state_trackers/clover/core/module.hpp |   16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/src/gallium/state_trackers/clover/core/module.hpp b/src/gallium/state_trackers/clover/core/module.hpp
index 18a5bfb..ee6caf9 100644
--- a/src/gallium/state_trackers/clover/core/module.hpp
+++ b/src/gallium/state_trackers/clover/core/module.hpp
@@ -68,27 +68,35 @@ namespace clover {
             sign_ext
          };
 
+         enum semantic {
+            general,
+            grid_dimension,
+            grid_offset
+         };
+
          argument(enum type type, size_t size,
                   size_t target_size, size_t target_align,
-                  enum ext_type ext_type) :
+                  enum ext_type ext_type,
+                  enum semantic semantic = general) :
             type(type), size(size),
             target_size(target_size), target_align(target_align),
-            ext_type(ext_type) { }
+            ext_type(ext_type), semantic(semantic) { }
 
          argument(enum type type, size_t size) :
             type(type), size(size),
             target_size(size), target_align(1),
-            ext_type(zero_ext) { }
+            ext_type(zero_ext), semantic(general) { }
 
          argument() : type(scalar), size(0),
                       target_size(0), target_align(1),
-                      ext_type(zero_ext) { }
+                      ext_type(zero_ext), semantic(general) { }
 
          type type;
          size_t size;
          size_t target_size;
          size_t target_align;
          ext_type ext_type;
+         semantic semantic;
       };
 
       struct symbol {




More information about the mesa-commit mailing list