Re: [Beignet] [PATCH V3] Utset: Add check for workgroup tests

2016-07-26 Thread Guo, Yejun
looks good to me, thanks.

-Original Message-
From: Beignet [mailto:beignet-boun...@lists.freedesktop.org] On Behalf Of Xiuli 
Pan
Sent: Wednesday, July 27, 2016 10:11 AM
To: beignet@lists.freedesktop.org
Cc: Pan, Xiuli
Subject: [Beignet] [PATCH V3] Utset: Add check for workgroup tests

From: Pan Xiuli <xiuli@intel.com>

Workgroup is also an OpenCL 2.0 feature, add check for these cases.
V2: Move check before kernel build
V3: Remove uselees check

Signed-off-by: Pan Xiuli <xiuli@intel.com>
---
 utests/compiler_workgroup_broadcast.cpp  | 12 ++
 utests/compiler_workgroup_reduce.cpp | 34 
 utests/compiler_workgroup_scan_exclusive.cpp | 30 
 utests/compiler_workgroup_scan_inclusive.cpp | 30 
 4 files changed, 106 insertions(+)

diff --git a/utests/compiler_workgroup_broadcast.cpp 
b/utests/compiler_workgroup_broadcast.cpp
index fd2228c..a323fb6 100644
--- a/utests/compiler_workgroup_broadcast.cpp
+++ b/utests/compiler_workgroup_broadcast.cpp
@@ -242,6 +242,8 @@ static void workgroup_generic(WG_BROADCAST wg_broadcast,
  */
 void compiler_workgroup_broadcast_1D_int(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_int *input = NULL;
   cl_int *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_broadcast",
@@ -252,6 +254,8 @@ 
MAKE_UTEST_FROM_FUNCTION(compiler_workgroup_broadcast_1D_int);
 
 void compiler_workgroup_broadcast_1D_long(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_long *input = NULL;
   cl_long *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_broadcast",
@@ -265,6 +269,8 @@ 
MAKE_UTEST_FROM_FUNCTION_WITH_ISSUE(compiler_workgroup_broadcast_1D_long);
  */
 void compiler_workgroup_broadcast_2D_int(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_int *input = NULL;
   cl_int *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_broadcast",
@@ -275,6 +281,8 @@ 
MAKE_UTEST_FROM_FUNCTION(compiler_workgroup_broadcast_2D_int);
 
 void compiler_workgroup_broadcast_2D_long(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_long *input = NULL;
   cl_long *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_broadcast",
@@ -289,6 +297,8 @@ 
MAKE_UTEST_FROM_FUNCTION_WITH_ISSUE(compiler_workgroup_broadcast_2D_long);
  */
 void compiler_workgroup_broadcast_3D_int(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_int *input = NULL;
   cl_int *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_broadcast",
@@ -299,6 +309,8 @@ 
MAKE_UTEST_FROM_FUNCTION(compiler_workgroup_broadcast_3D_int);
 
 void compiler_workgroup_broadcast_3D_long(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_long *input = NULL;
   cl_long *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_broadcast",
diff --git a/utests/compiler_workgroup_reduce.cpp 
b/utests/compiler_workgroup_reduce.cpp
index 21bcfa2..1cf4b08 100644
--- a/utests/compiler_workgroup_reduce.cpp
+++ b/utests/compiler_workgroup_reduce.cpp
@@ -219,6 +219,8 @@ static void workgroup_generic(WG_FUNCTION wg_func,
  */
 void compiler_workgroup_any(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_int *input = NULL;
   cl_int *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_reduce",
@@ -228,6 +230,8 @@ void compiler_workgroup_any(void)
 MAKE_UTEST_FROM_FUNCTION(compiler_workgroup_any);
 void compiler_workgroup_all(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_int *input = NULL;
   cl_int *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_reduce",
@@ -240,6 +244,8 @@ MAKE_UTEST_FROM_FUNCTION(compiler_workgroup_all);
  */
 void compiler_workgroup_reduce_add_int(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_int *input = NULL;
   cl_int *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_reduce",
@@ -249,6 +255,8 @@ void compiler_workgroup_reduce_add_int(void)
 MAKE_UTEST_FROM_FUNCTION(compiler_workgroup_reduce_add_int);
 void compiler_workgroup_reduce_add_uint(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_uint *input = NULL;
   cl_uint *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_reduce",
@@ -258,6 +266,8 @@ void compiler_workgroup_reduce_add_uint(void)
 MAKE_UTEST_FROM_FUNCTION(compiler_workgroup_reduce_add_uint);
 void compiler_workgroup_reduce_add_long(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_long *input = NULL;
   cl_long *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_reduce",
@@ -267,6 +277,8 @@ void compiler_workgroup_reduce_add_long(void)
 MAKE_UTEST_FROM_FUNCTION_WITH_ISSUE(compiler_workgroup_reduce_add_long);
 void compiler_workgroup_reduce_add_ulong(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_ulong *input = NULL;
   cl_ulong *expected = NULL;
   

[Beignet] [PATCH V3] Utset: Add check for workgroup tests

2016-07-26 Thread Xiuli Pan
From: Pan Xiuli 

Workgroup is also an OpenCL 2.0 feature, add check for these cases.
V2: Move check before kernel build
V3: Remove uselees check

Signed-off-by: Pan Xiuli 
---
 utests/compiler_workgroup_broadcast.cpp  | 12 ++
 utests/compiler_workgroup_reduce.cpp | 34 
 utests/compiler_workgroup_scan_exclusive.cpp | 30 
 utests/compiler_workgroup_scan_inclusive.cpp | 30 
 4 files changed, 106 insertions(+)

diff --git a/utests/compiler_workgroup_broadcast.cpp 
b/utests/compiler_workgroup_broadcast.cpp
index fd2228c..a323fb6 100644
--- a/utests/compiler_workgroup_broadcast.cpp
+++ b/utests/compiler_workgroup_broadcast.cpp
@@ -242,6 +242,8 @@ static void workgroup_generic(WG_BROADCAST wg_broadcast,
  */
 void compiler_workgroup_broadcast_1D_int(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_int *input = NULL;
   cl_int *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_broadcast",
@@ -252,6 +254,8 @@ 
MAKE_UTEST_FROM_FUNCTION(compiler_workgroup_broadcast_1D_int);
 
 void compiler_workgroup_broadcast_1D_long(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_long *input = NULL;
   cl_long *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_broadcast",
@@ -265,6 +269,8 @@ 
MAKE_UTEST_FROM_FUNCTION_WITH_ISSUE(compiler_workgroup_broadcast_1D_long);
  */
 void compiler_workgroup_broadcast_2D_int(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_int *input = NULL;
   cl_int *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_broadcast",
@@ -275,6 +281,8 @@ 
MAKE_UTEST_FROM_FUNCTION(compiler_workgroup_broadcast_2D_int);
 
 void compiler_workgroup_broadcast_2D_long(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_long *input = NULL;
   cl_long *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_broadcast",
@@ -289,6 +297,8 @@ 
MAKE_UTEST_FROM_FUNCTION_WITH_ISSUE(compiler_workgroup_broadcast_2D_long);
  */
 void compiler_workgroup_broadcast_3D_int(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_int *input = NULL;
   cl_int *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_broadcast",
@@ -299,6 +309,8 @@ 
MAKE_UTEST_FROM_FUNCTION(compiler_workgroup_broadcast_3D_int);
 
 void compiler_workgroup_broadcast_3D_long(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_long *input = NULL;
   cl_long *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_broadcast",
diff --git a/utests/compiler_workgroup_reduce.cpp 
b/utests/compiler_workgroup_reduce.cpp
index 21bcfa2..1cf4b08 100644
--- a/utests/compiler_workgroup_reduce.cpp
+++ b/utests/compiler_workgroup_reduce.cpp
@@ -219,6 +219,8 @@ static void workgroup_generic(WG_FUNCTION wg_func,
  */
 void compiler_workgroup_any(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_int *input = NULL;
   cl_int *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_reduce",
@@ -228,6 +230,8 @@ void compiler_workgroup_any(void)
 MAKE_UTEST_FROM_FUNCTION(compiler_workgroup_any);
 void compiler_workgroup_all(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_int *input = NULL;
   cl_int *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_reduce",
@@ -240,6 +244,8 @@ MAKE_UTEST_FROM_FUNCTION(compiler_workgroup_all);
  */
 void compiler_workgroup_reduce_add_int(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_int *input = NULL;
   cl_int *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_reduce",
@@ -249,6 +255,8 @@ void compiler_workgroup_reduce_add_int(void)
 MAKE_UTEST_FROM_FUNCTION(compiler_workgroup_reduce_add_int);
 void compiler_workgroup_reduce_add_uint(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_uint *input = NULL;
   cl_uint *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_reduce",
@@ -258,6 +266,8 @@ void compiler_workgroup_reduce_add_uint(void)
 MAKE_UTEST_FROM_FUNCTION(compiler_workgroup_reduce_add_uint);
 void compiler_workgroup_reduce_add_long(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_long *input = NULL;
   cl_long *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_reduce",
@@ -267,6 +277,8 @@ void compiler_workgroup_reduce_add_long(void)
 MAKE_UTEST_FROM_FUNCTION_WITH_ISSUE(compiler_workgroup_reduce_add_long);
 void compiler_workgroup_reduce_add_ulong(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_ulong *input = NULL;
   cl_ulong *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_reduce",
@@ -276,6 +288,8 @@ void compiler_workgroup_reduce_add_ulong(void)
 MAKE_UTEST_FROM_FUNCTION_WITH_ISSUE(compiler_workgroup_reduce_add_ulong);
 void compiler_workgroup_reduce_add_float(void)
 {
+  if (!cl_check_ocl20())
+return;
   cl_float *input = NULL;
   cl_float *expected = NULL;
   OCL_CREATE_KERNEL_FROM_FILE("compiler_workgroup_reduce",
@@ -289,6 +303,8 @@