aboutsummaryrefslogtreecommitdiff
path: root/test_conformance/spir/run_services.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test_conformance/spir/run_services.cpp')
-rw-r--r--test_conformance/spir/run_services.cpp127
1 files changed, 66 insertions, 61 deletions
diff --git a/test_conformance/spir/run_services.cpp b/test_conformance/spir/run_services.cpp
index 06fc418d..6e06d53c 100644
--- a/test_conformance/spir/run_services.cpp
+++ b/test_conformance/spir/run_services.cpp
@@ -213,7 +213,6 @@ cl_kernel create_kernel_helper( cl_program program, const std::string& kernel_na
{
int error = CL_SUCCESS;
cl_kernel kernel = NULL;
- cl_device_id device = get_program_device(program);
/* And create a kernel from it */
kernel = clCreateKernel( program, kernel_name.c_str(), &error );
if( kernel == NULL || error != CL_SUCCESS)
@@ -389,6 +388,7 @@ OclExtensions OclExtensions::getDeviceCapabilities(cl_device_id devId)
{
ret = ret | OclExtensions::fromString(*it);
}
+
return ret;
}
@@ -399,75 +399,80 @@ OclExtensions OclExtensions::empty()
OclExtensions OclExtensions::fromString(const std::string& e)
{
- std::string s = "OclExtensions::" + e;
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_int64_base_atomics);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_int64_extended_atomics);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_3d_image_writes);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_fp16);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_gl_sharing);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_gl_event);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_d3d10_sharing);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_dx9_media_sharing);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_d3d11_sharing);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_depth_images);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_gl_depth_images);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_gl_msaa_sharing);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_image2d_from_buffer);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_initialize_memory);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_spir);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_fp64);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_global_int32_base_atomics);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_global_int32_extended_atomics);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_local_int32_base_atomics);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_local_int32_extended_atomics);
- RETURN_IF_ENUM(s, OclExtensions::cl_khr_byte_addressable_store);
- RETURN_IF_ENUM(s, OclExtensions::cles_khr_int64);
- RETURN_IF_ENUM(s, OclExtensions::cles_khr_2d_image_array_writes);
+ std::string s = "OclExtensions::has_" + e;
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_int64_base_atomics);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_int64_extended_atomics);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_3d_image_writes);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_fp16);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_gl_sharing);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_gl_event);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_d3d10_sharing);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_dx9_media_sharing);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_d3d11_sharing);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_depth_images);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_gl_depth_images);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_gl_msaa_sharing);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_image2d_from_buffer);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_initialize_memory);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_spir);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_fp64);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_global_int32_base_atomics);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_global_int32_extended_atomics);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_local_int32_base_atomics);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_local_int32_extended_atomics);
+ RETURN_IF_ENUM(s, OclExtensions::has_cl_khr_byte_addressable_store);
+ RETURN_IF_ENUM(s, OclExtensions::has_cles_khr_int64);
+ RETURN_IF_ENUM(s, OclExtensions::has_cles_khr_2d_image_array_writes);
// Unknown KHR string.
return OclExtensions::empty();
}
std::string OclExtensions::toString()
{
-
- #define APPEND_STR_IF_SUPPORTS( STR, E) \
- if ( this->supports(E) ) \
- { \
- std::string ext_str( #E ); \
- std::string prefix = "OclExtensions::"; \
- size_t pos = ext_str.find( prefix ); \
- if ( pos != std::string::npos ) \
- { \
- ext_str.replace( pos, prefix.length(), ""); \
- } \
- STR += ext_str; \
- }
+#define APPEND_STR_IF_SUPPORTS(STR, E) \
+ if (this->supports(E)) \
+ { \
+ std::string ext_str(#E); \
+ std::string prefix = "OclExtensions::has_"; \
+ size_t pos = ext_str.find(prefix); \
+ if (pos != std::string::npos) \
+ { \
+ ext_str.replace(pos, prefix.length(), ""); \
+ } \
+ STR += ext_str; \
+ STR += " "; \
+ }
std::string s = "";
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_int64_base_atomics );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_int64_extended_atomics );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_3d_image_writes );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_fp16 );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_gl_sharing );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_gl_event );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_d3d10_sharing );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_dx9_media_sharing );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_d3d11_sharing );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_depth_images );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_gl_depth_images );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_gl_msaa_sharing );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_image2d_from_buffer );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_initialize_memory );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_spir );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_fp64 );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_global_int32_base_atomics );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_global_int32_extended_atomics );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_local_int32_base_atomics );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_local_int32_extended_atomics );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cl_khr_byte_addressable_store );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cles_khr_int64 );
- APPEND_STR_IF_SUPPORTS( s, OclExtensions::cles_khr_2d_image_array_writes );
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_int64_base_atomics);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_int64_extended_atomics);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_3d_image_writes);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_fp16);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_gl_sharing);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_gl_event);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_d3d10_sharing);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_dx9_media_sharing);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_d3d11_sharing);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_depth_images);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_gl_depth_images);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_gl_msaa_sharing);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_image2d_from_buffer);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_initialize_memory);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_spir);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_fp64);
+ APPEND_STR_IF_SUPPORTS(s,
+ OclExtensions::has_cl_khr_global_int32_base_atomics);
+ APPEND_STR_IF_SUPPORTS(
+ s, OclExtensions::has_cl_khr_global_int32_extended_atomics);
+ APPEND_STR_IF_SUPPORTS(s,
+ OclExtensions::has_cl_khr_local_int32_base_atomics);
+ APPEND_STR_IF_SUPPORTS(
+ s, OclExtensions::has_cl_khr_local_int32_extended_atomics);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cl_khr_byte_addressable_store);
+ APPEND_STR_IF_SUPPORTS(s, OclExtensions::has_cles_khr_int64);
+ APPEND_STR_IF_SUPPORTS(s,
+ OclExtensions::has_cles_khr_2d_image_array_writes);
return s;
}