| // |
| // Copyright (c) 2017 The Khronos Group Inc. |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| // |
| #include "harness/compat.h" |
| |
| #include <stdio.h> |
| #include <stdlib.h> |
| #include <string.h> |
| #include <iostream> |
| #include <memory> |
| #include <sstream> |
| #include <iterator> |
| |
| #include "harness/errorHelpers.h" |
| #include "harness/kernelHelpers.h" |
| #include "harness/typeWrappers.h" |
| #include "harness/os_helpers.h" |
| |
| #include "exceptions.h" |
| #include "run_build_test.h" |
| #include "run_services.h" |
| |
| #include <list> |
| #include <algorithm> |
| #include "miniz/miniz.h" |
| |
| #if defined(_WIN32) |
| #include <windows.h> |
| #include <direct.h> |
| #else // !_WIN32 |
| #include <dirent.h> |
| #include <sys/stat.h> |
| #include <sys/types.h> |
| #endif |
| |
| static int no_unzip = 0; |
| |
| class custom_cout : public std::streambuf |
| { |
| private: |
| std::stringstream ss; |
| |
| std::streamsize xsputn (const char* s, std::streamsize n) |
| { |
| ss.write(s, n); |
| return n; |
| } |
| |
| int overflow(int c) |
| { |
| if(c > 0 && c < 256) ss.put(c); |
| return c; |
| } |
| |
| int sync() |
| { |
| log_info("%s", ss.str().c_str()); |
| ss.str(""); |
| return 0; |
| } |
| }; |
| |
| class custom_cerr : public std::streambuf |
| { |
| private: |
| std::stringstream ss; |
| |
| std::streamsize xsputn (const char* s, std::streamsize n) |
| { |
| ss.write(s, n); |
| return n; |
| } |
| |
| int overflow(int c) |
| { |
| if(c > 0 && c < 256) ss.put(c); |
| return c; |
| } |
| |
| int sync() |
| { |
| log_error("%s", ss.str().c_str()); |
| ss.str(""); |
| return 0; |
| } |
| }; |
| |
| class override_buff |
| { |
| std::ostream* stream; |
| std::streambuf* buff; |
| |
| public: |
| override_buff(std::ostream& s, std::streambuf& b) |
| { |
| stream = &s; |
| buff = stream->rdbuf(); |
| stream->rdbuf(&b); |
| } |
| |
| ~override_buff() |
| { |
| stream->rdbuf(buff); |
| } |
| }; |
| |
| typedef bool (*testfn)(cl_device_id device, cl_uint size_t_width, const char *folder); |
| |
| template <typename T> |
| void dealloc(T *p) |
| { |
| if (p) delete p; |
| } |
| |
| static bool is_dir_exits(const char* path) |
| { |
| assert(path && "NULL directory"); |
| #if defined(_WIN32) |
| DWORD ftyp = GetFileAttributesA(path); |
| if (ftyp != INVALID_FILE_ATTRIBUTES && (ftyp & FILE_ATTRIBUTE_DIRECTORY)) |
| return true; |
| #else // Linux assumed here. |
| if (DIR *pDir = opendir(path)) |
| { |
| closedir(pDir); |
| return true; |
| } |
| #endif |
| return false; |
| } |
| |
| static void get_spir_version(cl_device_id device, |
| std::vector<Version> &versions) |
| { |
| char version[64] = {0}; |
| cl_int err; |
| size_t size = 0; |
| |
| if ((err = clGetDeviceInfo(device, CL_DEVICE_SPIR_VERSIONS, sizeof(version), |
| (void *)version, &size))) |
| { |
| log_error( "Error: failed to obtain SPIR version at %s:%d (err = %d)\n", |
| __FILE__, __LINE__, err ); |
| return; |
| } |
| |
| assert(size && "Empty version string"); |
| |
| std::list<std::string> versionVector; |
| std::stringstream versionStream(version); |
| std::copy(std::istream_iterator<std::string>(versionStream), |
| std::istream_iterator<std::string>(), |
| std::back_inserter(versionVector)); |
| for (auto &v : versionVector) |
| { |
| auto major = v[v.find('.') - 1]; |
| auto minor = v[v.find('.') + 1]; |
| versions.push_back(Version{ major - '0', minor - '0' }); |
| } |
| } |
| |
| struct CounterEventHandler: EventHandler{ |
| unsigned int& Counter; |
| unsigned int TN; |
| std::string LastTest; |
| |
| //N - counter of successful tests. |
| //T - total number of tests in the suite |
| CounterEventHandler(unsigned int& N, unsigned int T): Counter(N), TN(T){} |
| |
| void operator ()(const std::string& testName, const std::string& kernelName) { |
| if (testName != LastTest){ |
| ++Counter; |
| LastTest = testName; |
| } |
| } |
| }; |
| |
| class AccumulatorEventHandler: public EventHandler{ |
| std::list<std::string>& m_list; |
| const std::string m_name; |
| public: |
| AccumulatorEventHandler(std::list<std::string>& L, const std::string N): |
| m_list(L), m_name(N){} |
| |
| void operator ()(const std::string& T, const std::string& K){ |
| std::cerr << "\nTest " << T << "\t Kernel " << K << " failed" << std::endl; |
| m_list.push_back(m_name + "\t" + T + "\t" + K); |
| } |
| }; |
| |
| static void printError(const std::string& S){ |
| std::cerr << S << std::endl; |
| } |
| |
| static bool extractKernelAttribute(std::string& kernel_attributes, |
| const std::string& attribute, std::vector<std::string>& attribute_vector) { |
| size_t start = kernel_attributes.find(attribute + "("); |
| if (start == 0) { |
| size_t end = kernel_attributes.find(")", start); |
| if (end != std::string::npos) { |
| size_t length = end-start+1; |
| attribute_vector.push_back(kernel_attributes.substr(start, length)); |
| kernel_attributes.erase(start, length); |
| return true; |
| } |
| } |
| return false; |
| } |
| |
| // Extracts suite with the given name, and saves it to disk. |
| static void extract_suite(const char *suiteName) |
| { |
| mz_zip_archive zip_archive; |
| |
| // Composing the name of the archive. |
| char* dir = get_exe_dir(); |
| std::string archiveName(dir); |
| archiveName.append(dir_sep()); |
| archiveName.append(suiteName); |
| archiveName.append(".zip"); |
| free(dir); |
| |
| #if defined(_WIN32) |
| _mkdir(suiteName); |
| #else |
| mkdir(suiteName, S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH); |
| #endif |
| |
| memset(&zip_archive, 0, sizeof(zip_archive)); |
| if (!mz_zip_reader_init_file(&zip_archive, archiveName.c_str(), 0)) |
| throw Exceptions::ArchiveError(MZ_DATA_ERROR); |
| |
| // Get and print information about each file in the archive. |
| for (size_t i = 0; i < mz_zip_reader_get_num_files(&zip_archive); i++) |
| { |
| mz_zip_archive_file_stat fileStat; |
| size_t fileSize = 0; |
| |
| if (!mz_zip_reader_file_stat(&zip_archive, i, &fileStat)) |
| { |
| mz_zip_reader_end(&zip_archive); |
| throw Exceptions::ArchiveError(MZ_DATA_ERROR); |
| } |
| const std::string fileName = fileStat.m_filename; |
| |
| // If the file is a directory, skip it. We create suite folder at the beggining. |
| if (mz_zip_reader_is_file_a_directory(&zip_archive, fileStat.m_file_index)) |
| { |
| continue; |
| } |
| |
| // Extracting the file. |
| void *p = mz_zip_reader_extract_file_to_heap(&zip_archive, |
| fileName.c_str(), |
| &fileSize, 0); |
| if (!p) |
| { |
| mz_zip_reader_end(&zip_archive); |
| throw std::runtime_error("mz_zip_reader_extract_file_to_heap() failed!\n"); |
| } |
| |
| // Writing the file back to the disk |
| std::fstream file(fileName.c_str(), |
| std::ios_base::trunc | std::ios_base::in | |
| std::ios_base::out | std::ios_base::binary); |
| if (!file.is_open()) |
| { |
| std::string msg = "Failed to open "; |
| msg.append(fileName); |
| throw Exceptions::TestError(msg); |
| } |
| |
| file.write((const char*)p, fileSize); |
| if (file.bad()) |
| { |
| std::string msg("Failed to write into "); |
| msg.append(fileName); |
| throw Exceptions::TestError(msg); |
| } |
| |
| // Cleanup. |
| file.flush(); |
| file.close(); |
| free(p); |
| } |
| mz_zip_reader_end(&zip_archive); |
| } |
| |
| // |
| // Extracts the given suite package if needed. |
| // return true if the suite was extracted, false otherwise. |
| // |
| static bool try_extract(const char* suite) |
| { |
| if(no_unzip == 0) |
| { |
| std::cout << "Extracting test suite " << suite << std::endl; |
| extract_suite(suite); |
| std::cout << "Done." << std::endl; |
| } |
| return true; |
| } |
| |
| bool test_suite(cl_device_id device, cl_uint size_t_width, const char *folder, |
| const char *test_name[], unsigned int number_of_tests, |
| const char *extension) |
| { |
| // If the folder doesn't exist, we extract in from the archive. |
| try_extract(folder); |
| |
| std::cout << "Running tests:" << std::endl; |
| |
| OclExtensions deviceCapabilities = OclExtensions::getDeviceCapabilities(device); |
| unsigned int tests_passed = 0; |
| CounterEventHandler SuccE(tests_passed, number_of_tests); |
| std::list<std::string> ErrList; |
| for (unsigned int i = 0; i < number_of_tests; ++i) |
| { |
| AccumulatorEventHandler FailE(ErrList, test_name[i]); |
| if((strlen(extension) != 0) && (!is_extension_available(device, extension))) |
| { |
| (SuccE)(test_name[i], ""); |
| std::cout << test_name[i] << "... Skipped. (Cannot run on device due to missing extension: " << extension << " )." << std::endl; |
| continue; |
| } |
| TestRunner testRunner(&SuccE, &FailE, deviceCapabilities); |
| testRunner.runBuildTest(device, folder, test_name[i], size_t_width); |
| } |
| |
| std::cout << std::endl; |
| std::cout << "PASSED " << tests_passed << " of " << number_of_tests << " tests.\n" << std::endl; |
| |
| if (!ErrList.empty()) |
| { |
| std::cout << "Failed tests:" << std::endl; |
| std::for_each(ErrList.begin(), ErrList.end(), printError); |
| std::cout << std::endl; |
| return false; |
| } |
| std::cout << std::endl; |
| return true; |
| } |
| |
| static std::string getTestFolder(const std::string& TS) |
| { |
| const std::string DOUBLE("_double"); |
| if (TS.size() < DOUBLE.size()) |
| return TS; |
| |
| const size_t prefixLen = TS.size() - DOUBLE.size(); |
| const std::string postfix = TS.substr(prefixLen, DOUBLE.size()); |
| if (DOUBLE == postfix) |
| return TS.substr(0, prefixLen); |
| |
| return TS; |
| } |
| |
| bool test_api (cl_device_id device, cl_uint size_t_width, const char *folder) |
| { |
| static const char* test_name[] = { |
| "const_derived_d", |
| "const_scalar_d", |
| "const_vector16_d", |
| "const_vector2_d", |
| "const_vector3_d", |
| "const_vector4_d", |
| "const_vector8_d", |
| "constant_derived_p0", |
| "constant_derived_p1", |
| "constant_derived_restrict_p0", |
| "constant_derived_restrict_p1", |
| "constant_scalar_p0", |
| "constant_scalar_p1", |
| "constant_scalar_p2", |
| "constant_scalar_p3", |
| "constant_scalar_restrict_p0", |
| "constant_scalar_restrict_p1", |
| "constant_scalar_restrict_p2", |
| "constant_scalar_restrict_p3", |
| "constant_vector16_p0", |
| "constant_vector16_p1", |
| "constant_vector16_p2", |
| "constant_vector16_restrict_p0", |
| "constant_vector16_restrict_p2", |
| "constant_vector2_p0", |
| "constant_vector2_p1", |
| "constant_vector2_restrict_p0", |
| "constant_vector2_restrict_p1", |
| "constant_vector2_restrict_p2", |
| "constant_vector3_p0", |
| "constant_vector3_p1", |
| "constant_vector3_p2", |
| "constant_vector3_restrict_p0", |
| "constant_vector3_restrict_p1", |
| "constant_vector3_restrict_p2", |
| "constant_vector4_p0", |
| "constant_vector4_p1", |
| "constant_vector4_p2", |
| "constant_vector4_restrict_p0", |
| "constant_vector4_restrict_p1", |
| "constant_vector4_restrict_p2", |
| "constant_vector8_p0", |
| "constant_vector8_p1", |
| "constant_vector8_p2", |
| "constant_vector8_restrict_p0", |
| "constant_vector8_restrict_p1", |
| "constant_vector8_restrict_p2", |
| "derived_d", |
| "global_const_derived_p", |
| "global_const_derived_restrict_p", |
| "global_const_scalar_p", |
| "global_const_scalar_restrict_p", |
| "global_const_vector16_p", |
| "global_const_vector16_restrict_p", |
| "global_const_vector2_p", |
| "global_const_vector2_restrict_p", |
| "global_const_vector3_p", |
| "global_const_vector3_restrict_p", |
| "global_const_vector4_p", |
| "global_const_vector4_restrict_p", |
| "global_const_vector8_p", |
| "global_const_vector8_restrict_p", |
| "global_const_volatile_derived_p", |
| "global_const_volatile_derived_restrict_p", |
| "global_const_volatile_scalar_p", |
| "global_const_volatile_scalar_restrict_p", |
| "global_const_volatile_vector16_p", |
| "global_const_volatile_vector16_restrict_p", |
| "global_const_volatile_vector2_p", |
| "global_const_volatile_vector2_restrict_p", |
| "global_const_volatile_vector3_p", |
| "global_const_volatile_vector3_restrict_p", |
| "global_const_volatile_vector4_p", |
| "global_const_volatile_vector4_restrict_p", |
| "global_const_volatile_vector8_p", |
| "global_const_volatile_vector8_restrict_p", |
| "global_derived_p", |
| "global_derived_restrict_p", |
| "global_scalar_p", |
| "global_scalar_restrict_p", |
| "global_vector16_p", |
| "global_vector16_restrict_p", |
| "global_vector2_p", |
| "global_vector2_restrict_p", |
| "global_vector3_p", |
| "global_vector3_restrict_p", |
| "global_vector4_p", |
| "global_vector4_restrict_p", |
| "global_vector8_p", |
| "global_vector8_restrict_p", |
| "global_volatile_derived_p", |
| "global_volatile_derived_restrict_p", |
| "global_volatile_scalar_p", |
| "global_volatile_scalar_restrict_p", |
| "global_volatile_vector16_p", |
| "global_volatile_vector16_restrict_p", |
| "global_volatile_vector2_p", |
| "global_volatile_vector2_restrict_p", |
| "global_volatile_vector3_p", |
| "global_volatile_vector3_restrict_p", |
| "global_volatile_vector4_p", |
| "global_volatile_vector4_restrict_p", |
| "global_volatile_vector8_p", |
| "global_volatile_vector8_restrict_p", |
| "local_const_derived_p", |
| "local_const_derived_restrict_p", |
| "local_const_scalar_p", |
| "local_const_scalar_restrict_p", |
| "local_const_vector16_p", |
| "local_const_vector16_restrict_p", |
| "local_const_vector2_p", |
| "local_const_vector2_restrict_p", |
| "local_const_vector3_p", |
| "local_const_vector3_restrict_p", |
| "local_const_vector4_p", |
| "local_const_vector4_restrict_p", |
| "local_const_vector8_p", |
| "local_const_vector8_restrict_p", |
| "local_const_volatile_derived_p", |
| "local_const_volatile_derived_restrict_p", |
| "local_const_volatile_scalar_p", |
| "local_const_volatile_scalar_restrict_p", |
| "local_const_volatile_vector16_p", |
| "local_const_volatile_vector16_restrict_p", |
| "local_const_volatile_vector2_p", |
| "local_const_volatile_vector2_restrict_p", |
| "local_const_volatile_vector3_p", |
| "local_const_volatile_vector3_restrict_p", |
| "local_const_volatile_vector4_p", |
| "local_const_volatile_vector4_restrict_p", |
| "local_const_volatile_vector8_p", |
| "local_const_volatile_vector8_restrict_p", |
| "local_derived_p", |
| "local_derived_restrict_p", |
| "local_scalar_p", |
| "local_scalar_restrict_p", |
| "local_vector16_p", |
| "local_vector16_restrict_p", |
| "local_vector2_p", |
| "local_vector2_restrict_p", |
| "local_vector3_p", |
| "local_vector3_restrict_p", |
| "local_vector4_p", |
| "local_vector4_restrict_p", |
| "local_vector8_p", |
| "local_vector8_restrict_p", |
| "local_volatile_derived_p", |
| "local_volatile_derived_restrict_p", |
| "local_volatile_scalar_p", |
| "local_volatile_scalar_restrict_p", |
| "local_volatile_vector16_p", |
| "local_volatile_vector16_restrict_p", |
| "local_volatile_vector2_p", |
| "local_volatile_vector2_restrict_p", |
| "local_volatile_vector3_p", |
| "local_volatile_vector3_restrict_p", |
| "local_volatile_vector4_p", |
| "local_volatile_vector4_restrict_p", |
| "local_volatile_vector8_p", |
| "local_volatile_vector8_restrict_p", |
| "private_const_derived_d", |
| "private_const_scalar_d", |
| "private_const_vector16_d", |
| "private_const_vector2_d", |
| "private_const_vector3_d", |
| "private_const_vector4_d", |
| "private_const_vector8_d", |
| "private_derived_d", |
| "private_scalar_d", |
| "private_vector16_d", |
| "private_vector2_d", |
| "private_vector3_d", |
| "private_vector4_d", |
| "private_vector8_d", |
| "scalar_d", |
| "vector16_d", |
| "vector2_d", |
| "vector3_d", |
| "vector4_d", |
| "vector8_d", |
| "image_d", |
| "image_d_write_array", |
| "image_d_3d", |
| "sample_test.min_max_read_image_args", |
| "kernel_with_bool", |
| "bool_scalar_d", |
| "long_constant_scalar_p2", |
| "long_const_scalar_d", |
| "long_const_vector16_d", |
| "long_const_vector2_d", |
| "long_const_vector3_d", |
| "long_const_vector4_d", |
| "long_const_vector8_d", |
| "long_constant_scalar_p3", |
| "long_constant_scalar_restrict_p2", |
| "long_constant_scalar_restrict_p3", |
| "long_constant_vector16_p1", |
| "long_constant_vector16_restrict_p1", |
| "long_constant_vector2_p1", |
| "long_constant_vector2_restrict_p1", |
| "long_constant_vector3_p1", |
| "long_constant_vector3_restrict_p1", |
| "long_constant_vector4_p1", |
| "long_constant_vector4_restrict_p1", |
| "long_constant_vector8_p1", |
| "long_constant_vector8_restrict_p1", |
| "long_global_const_scalar_p", |
| "long_global_const_scalar_restrict_p", |
| "long_global_const_vector16_p", |
| "long_global_const_vector16_restrict_p", |
| "long_global_const_vector2_p", |
| "long_global_const_vector2_restrict_p", |
| "long_global_const_vector3_p", |
| "long_global_const_vector3_restrict_p", |
| "long_global_const_vector4_p", |
| "long_global_const_vector4_restrict_p", |
| "long_global_const_vector8_p", |
| "long_global_const_vector8_restrict_p", |
| "long_global_const_volatile_scalar_p", |
| "long_global_const_volatile_scalar_restrict_p", |
| "long_global_const_volatile_vector16_p", |
| "long_global_const_volatile_vector16_restrict_p", |
| "long_global_const_volatile_vector2_p", |
| "long_global_const_volatile_vector2_restrict_p", |
| "long_global_const_volatile_vector3_p", |
| "long_global_const_volatile_vector3_restrict_p", |
| "long_global_const_volatile_vector4_p", |
| "long_global_const_volatile_vector4_restrict_p", |
| "long_global_const_volatile_vector8_p", |
| "long_global_const_volatile_vector8_restrict_p", |
| "long_global_scalar_p", |
| "long_global_scalar_restrict_p", |
| "long_global_vector16_p", |
| "long_global_vector16_restrict_p", |
| "long_global_vector2_p", |
| "long_global_vector2_restrict_p", |
| "long_global_vector3_p", |
| "long_global_vector3_restrict_p", |
| "long_global_vector4_p", |
| "long_global_vector4_restrict_p", |
| "long_global_vector8_p", |
| "long_global_vector8_restrict_p", |
| "long_global_volatile_scalar_p", |
| "long_global_volatile_scalar_restrict_p", |
| "long_global_volatile_vector16_p", |
| "long_global_volatile_vector16_restrict_p", |
| "long_global_volatile_vector2_p", |
| "long_global_volatile_vector2_restrict_p", |
| "long_global_volatile_vector3_p", |
| "long_global_volatile_vector3_restrict_p", |
| "long_global_volatile_vector4_p", |
| "long_global_volatile_vector4_restrict_p", |
| "long_global_volatile_vector8_p", |
| "long_global_volatile_vector8_restrict_p", |
| "long_local_const_scalar_p", |
| "long_local_const_scalar_restrict_p", |
| "long_local_const_vector16_p", |
| "long_local_const_vector16_restrict_p", |
| "long_local_const_vector2_p", |
| "long_local_const_vector2_restrict_p", |
| "long_local_const_vector3_p", |
| "long_local_const_vector3_restrict_p", |
| "long_local_const_vector4_p", |
| "long_local_const_vector4_restrict_p", |
| "long_local_const_vector8_p", |
| "long_local_const_vector8_restrict_p", |
| "long_local_const_volatile_scalar_p", |
| "long_local_const_volatile_scalar_restrict_p", |
| "long_local_const_volatile_vector16_p", |
| "long_local_const_volatile_vector16_restrict_p", |
| "long_local_const_volatile_vector2_p", |
| "long_local_const_volatile_vector2_restrict_p", |
| "long_local_const_volatile_vector3_p", |
| "long_local_const_volatile_vector3_restrict_p", |
| "long_local_const_volatile_vector4_p", |
| "long_local_const_volatile_vector4_restrict_p", |
| "long_local_const_volatile_vector8_p", |
| "long_local_const_volatile_vector8_restrict_p", |
| "long_local_scalar_p", |
| "long_local_scalar_restrict_p", |
| "long_local_vector16_p", |
| "long_local_vector16_restrict_p", |
| "long_local_vector2_p", |
| "long_local_vector2_restrict_p", |
| "long_local_vector3_p", |
| "long_local_vector3_restrict_p", |
| "long_local_vector4_p", |
| "long_local_vector4_restrict_p", |
| "long_local_vector8_p", |
| "long_local_vector8_restrict_p", |
| "long_local_volatile_scalar_p", |
| "long_local_volatile_scalar_restrict_p", |
| "long_local_volatile_vector16_p", |
| "long_local_volatile_vector16_restrict_p", |
| "long_local_volatile_vector2_p", |
| "long_local_volatile_vector2_restrict_p", |
| "long_local_volatile_vector3_p", |
| "long_local_volatile_vector3_restrict_p", |
| "long_local_volatile_vector4_p", |
| "long_local_volatile_vector4_restrict_p", |
| "long_local_volatile_vector8_p", |
| "long_local_volatile_vector8_restrict_p", |
| "long_private_const_scalar_d", |
| "long_private_const_vector16_d", |
| "long_private_const_vector2_d", |
| "long_private_const_vector3_d", |
| "long_private_const_vector4_d", |
| "long_private_const_vector8_d", |
| "long_private_scalar_d", |
| "long_private_vector16_d", |
| "long_private_vector2_d", |
| "long_private_vector3_d", |
| "long_private_vector4_d", |
| "long_private_vector8_d", |
| "long_scalar_d", |
| "long_vector16_d", |
| "long_vector2_d", |
| "long_vector3_d", |
| "long_vector4_d", |
| "long_vector8_d", |
| }; |
| |
| log_info("test_api\n"); |
| return test_suite(device, size_t_width, folder, test_name, sizeof(test_name) / sizeof(const char *), ""); |
| } |
| |
| |
| bool test_api_double (cl_device_id device, cl_uint size_t_width, const char *folder) |
| { |
| static const char* test_name[] = { |
| "double_scalar_p", |
| "double_scalar_p2", |
| "double_scalar_d", |
| "double_vector2_p", |
| "double_vector2_p2", |
| "double_vector2_d", |
| "double_vector3_p", |
| "double_vector3_p2", |
| "double_vector3_d", |
| "double_vector4_p", |
| "double_vector4_p2", |
| "double_vector4_d", |
| "double_vector8_p", |
| "double_vector8_p2", |
| "double_vector8_d", |
| "double_vector16_p", |
| "double_vector16_p2", |
| "double_vector16_d", |
| }; |
| |
| log_info("test_api_double\n"); |
| return test_suite(device, size_t_width, folder, test_name, sizeof(test_name) / sizeof(const char *), "cl_khr_fp64"); |
| } |
| |
| |
| bool test_atomics (cl_device_id device, cl_uint size_t_width, const char *folder) |
| { |
| static const char* test_name[] = { |
| "test_atomic_fn.atomic_add_global_int", |
| "test_atomic_fn.atomic_add_global_uint", |
| "test_atomic_fn.atomic_sub_global_int", |
| "test_atomic_fn.atomic_sub_global_uint", |
| "test_atomic_fn.atomic_xchg_global_int", |
| "test_atomic_fn.atomic_xchg_global_uint", |
| "test_atomic_fn.atomic_xchg_global_float", |
| "test_atomic_fn.atomic_min_global_int", |
| "test_atomic_fn.atomic_min_global_uint", |
| "test_atomic_fn.atomic_max_global_int", |
| "test_atomic_fn.atomic_max_global_uint", |
| "test_atomic_fn.atomic_inc_global_int", |
| "test_atomic_fn.atomic_inc_global_uint", |
| "test_atomic_fn.atomic_dec_global_int", |
| "test_atomic_fn.atomic_dec_global_uint", |
| "test_atomic_fn.atomic_cmpxchg_global_int", |
| "test_atomic_fn.atomic_cmpxchg_global_uint", |
| "test_atomic_fn.atomic_and_global_int", |
| "test_atomic_fn.atomic_and_global_uint", |
| "test_atomic_fn.atomic_or_global_int", |
| "test_atomic_fn.atomic_or_global_uint", |
| "test_atomic_fn.atomic_xor_global_int", |
| "test_atomic_fn.atomic_xor_global_uint", |
| "test_atomic_fn.atomic_add_local_int", |
| "test_atomic_fn.atomic_add_local_uint", |
| "test_atomic_fn.atomic_sub_local_int", |
| "test_atomic_fn.atomic_sub_local_uint", |
| "test_atomic_fn.atomic_xchg_local_int", |
| "test_atomic_fn.atomic_xchg_local_uint", |
| "test_atomic_fn.atomic_xchg_local_float", |
| "test_atomic_fn.atomic_min_local_int", |
| "test_atomic_fn.atomic_min_local_uint", |
| "test_atomic_fn.atomic_max_local_int", |
| "test_atomic_fn.atomic_max_local_uint", |
| "test_atomic_fn.atomic_inc_local_int", |
| "test_atomic_fn.atomic_inc_local_uint", |
| "test_atomic_fn.atomic_dec_local_int", |
| "test_atomic_fn.atomic_dec_local_uint", |
| "test_atomic_fn.atomic_cmpxchg_local_int", |
| "test_atomic_fn.atomic_cmpxchg_local_uint", |
| "test_atomic_fn.atomic_and_local_int", |
| "test_atomic_fn.atomic_and_local_uint", |
| "test_atomic_fn.atomic_or_local_int", |
| "test_atomic_fn.atomic_or_local_uint", |
| "test_atomic_fn.atomic_xor_local_int", |
| "test_atomic_fn.atomic_xor_local_uint", |
| }; |
| |
| log_info("test_atomics\n"); |
| return test_suite(device, size_t_width, folder, test_name, sizeof(test_name) / sizeof(const char *), ""); |
| } |
| |
| |
| bool test_basic (cl_device_id device, cl_uint size_t_width, const char *folder) |
| { |
| static const char* test_name[] = { |
| "sample_kernel.work_item_functions", |
| "test_sizeof.sizeof_char", |
| "test_sizeof.sizeof_uchar", |
| "test_sizeof.sizeof_unsigned_char", |
| "test_sizeof.sizeof_short", |
| "test_sizeof.sizeof_ushort", |
| "test_sizeof.sizeof_unsigned_short", |
| "test_sizeof.sizeof_int", |
| "test_sizeof.sizeof_uint", |
| "test_sizeof.sizeof_unsigned_int", |
| "test_sizeof.sizeof_float", |
| "test_sizeof.sizeof_long", |
| "test_sizeof.sizeof_ulong", |
| "test_sizeof.sizeof_unsigned_long", |
| "test_sizeof.sizeof_char2", |
| "test_sizeof.sizeof_uchar2", |
| "test_sizeof.sizeof_short2", |
| "test_sizeof.sizeof_ushort2", |
| "test_sizeof.sizeof_int2", |
| "test_sizeof.sizeof_uint2", |
| "test_sizeof.sizeof_float2", |
| "test_sizeof.sizeof_long2", |
| "test_sizeof.sizeof_ulong2", |
| "test_sizeof.sizeof_char4", |
| "test_sizeof.sizeof_uchar4", |
| "test_sizeof.sizeof_short4", |
| "test_sizeof.sizeof_ushort4", |
| "test_sizeof.sizeof_int4", |
| "test_sizeof.sizeof_uint4", |
| "test_sizeof.sizeof_float4", |
| "test_sizeof.sizeof_long4", |
| "test_sizeof.sizeof_ulong4", |
| "test_sizeof.sizeof_char8", |
| "test_sizeof.sizeof_uchar8", |
| "test_sizeof.sizeof_short8", |
| "test_sizeof.sizeof_ushort8", |
| "test_sizeof.sizeof_int8", |
| "test_sizeof.sizeof_uint8", |
| "test_sizeof.sizeof_float8", |
| "test_sizeof.sizeof_long8", |
| "test_sizeof.sizeof_ulong8", |
| "test_sizeof.sizeof_char16", |
| "test_sizeof.sizeof_uchar16", |
| "test_sizeof.sizeof_short16", |
| "test_sizeof.sizeof_ushort16", |
| "test_sizeof.sizeof_int16", |
| "test_sizeof.sizeof_uint16", |
| "test_sizeof.sizeof_float16", |
| "test_sizeof.sizeof_long16", |
| "test_sizeof.sizeof_ulong16", |
| "test_sizeof.sizeof_void_p", |
| "test_sizeof.sizeof_size_t", |
| "test_sizeof.sizeof_sizeof_int", |
| "test_sizeof.sizeof_ptrdiff_t", |
| "test_sizeof.sizeof_intptr_t", |
| "test_sizeof.sizeof_uintptr_t", |
| "test_sizeof.sizeof_image2d_t", |
| "test_sizeof.sizeof_image3d_t", |
| "test_sizeof.sizeof_double", |
| "test_sizeof.sizeof_double2", |
| "test_sizeof.sizeof_double4", |
| "test_sizeof.sizeof_double8", |
| "test_sizeof.sizeof_double16", |
| "sample_test.vec_type_hint_char", |
| "sample_test.vec_type_hint_char2", |
| "sample_test.vec_type_hint_char4", |
| "sample_test.vec_type_hint_char8", |
| "sample_test.vec_type_hint_char16", |
| "sample_test.vec_type_hint_uchar", |
| "sample_test.vec_type_hint_uchar2", |
| "sample_test.vec_type_hint_uchar4", |
| "sample_test.vec_type_hint_uchar8", |
| "sample_test.vec_type_hint_uchar16", |
| "sample_test.vec_type_hint_short", |
| "sample_test.vec_type_hint_short2", |
| "sample_test.vec_type_hint_short4", |
| "sample_test.vec_type_hint_short8", |
| "sample_test.vec_type_hint_short16", |
| "sample_test.vec_type_hint_ushort", |
| "sample_test.vec_type_hint_ushort2", |
| "sample_test.vec_type_hint_ushort4", |
| "sample_test.vec_type_hint_ushort8", |
| "sample_test.vec_type_hint_ushort16", |
| "sample_test.vec_type_hint_int", |
| "sample_test.vec_type_hint_int2", |
| "sample_test.vec_type_hint_int4", |
| "sample_test.vec_type_hint_int8", |
| "sample_test.vec_type_hint_int16", |
| "sample_test.vec_type_hint_uint", |
| "sample_test.vec_type_hint_uint2", |
| "sample_test.vec_type_hint_uint4", |
| "sample_test.vec_type_hint_uint8", |
| "sample_test.vec_type_hint_uint16", |
| "sample_test.vec_type_hint_long", |
| "sample_test.vec_type_hint_long2", |
| "sample_test.vec_type_hint_long4", |
| "sample_test.vec_type_hint_long8", |
| "sample_test.vec_type_hint_long16", |
| "sample_test.vec_type_hint_ulong", |
| "sample_test.vec_type_hint_ulong2", |
| "sample_test.vec_type_hint_ulong4", |
| "sample_test.vec_type_hint_ulong8", |
| "sample_test.vec_type_hint_ulong16", |
| "sample_test.vec_type_hint_float", |
| "sample_test.vec_type_hint_float2", |
| "sample_test.vec_type_hint_float4", |
| "sample_test.vec_type_hint_float8", |
| "sample_test.vec_type_hint_float16", |
| "test.kernel_memory_alignment_private_char", |
| "test.kernel_memory_alignment_private_uchar", |
| "test.kernel_memory_alignment_private_short", |
| "test.kernel_memory_alignment_private_ushort", |
| "test.kernel_memory_alignment_private_int", |
| "test.kernel_memory_alignment_private_uint", |
| "test.kernel_memory_alignment_private_long", |
| "test.kernel_memory_alignment_private_ulong", |
| "test.kernel_memory_alignment_private_float", |
| "test_fn.vload_global_char2", |
| "test_fn.vload_global_char3", |
| "test_fn.vload_global_char4", |
| "test_fn.vload_global_char8", |
| "test_fn.vload_global_char16", |
| "test_fn.vload_global_uchar2", |
| "test_fn.vload_global_uchar3", |
| "test_fn.vload_global_uchar4", |
| "test_fn.vload_global_uchar8", |
| "test_fn.vload_global_uchar16", |
| "test_fn.vload_global_short2", |
| "test_fn.vload_global_short3", |
| "test_fn.vload_global_short4", |
| "test_fn.vload_global_short8", |
| "test_fn.vload_global_short16", |
| "test_fn.vload_global_ushort2", |
| "test_fn.vload_global_ushort3", |
| "test_fn.vload_global_ushort4", |
| "test_fn.vload_global_ushort8", |
| "test_fn.vload_global_ushort16", |
| "test_fn.vload_global_int2", |
| "test_fn.vload_global_int3", |
| "test_fn.vload_global_int4", |
| "test_fn.vload_global_int8", |
| "test_fn.vload_global_int16", |
| "test_fn.vload_global_uint2", |
| "test_fn.vload_global_uint3", |
| "test_fn.vload_global_uint4", |
| "test_fn.vload_global_uint8", |
| "test_fn.vload_global_uint16", |
| "test_fn.vload_global_long2", |
| "test_fn.vload_global_long3", |
| "test_fn.vload_global_long4", |
| "test_fn.vload_global_long8", |
| "test_fn.vload_global_long16", |
| "test_fn.vload_global_ulong2", |
| "test_fn.vload_global_ulong3", |
| "test_fn.vload_global_ulong4", |
| "test_fn.vload_global_ulong8", |
| "test_fn.vload_global_ulong16", |
| "test_fn.vload_global_float2", |
| "test_fn.vload_global_float3", |
| "test_fn.vload_global_float4", |
| "test_fn.vload_global_float8", |
| "test_fn.vload_global_float16", |
| "test_fn.vload_constant_char2", |
| "test_fn.vload_constant_char3", |
| "test_fn.vload_constant_char4", |
| "test_fn.vload_constant_char8", |
| "test_fn.vload_constant_char16", |
| "test_fn.vload_constant_uchar2", |
| "test_fn.vload_constant_uchar3", |
| "test_fn.vload_constant_uchar4", |
| "test_fn.vload_constant_uchar8", |
| "test_fn.vload_constant_uchar16", |
| "test_fn.vload_constant_short2", |
| "test_fn.vload_constant_short3", |
| "test_fn.vload_constant_short4", |
| "test_fn.vload_constant_short8", |
| "test_fn.vload_constant_short16", |
| "test_fn.vload_constant_ushort2", |
| "test_fn.vload_constant_ushort3", |
| "test_fn.vload_constant_ushort4", |
| "test_fn.vload_constant_ushort8", |
| "test_fn.vload_constant_ushort16", |
| "test_fn.vload_constant_int2", |
| "test_fn.vload_constant_int3", |
| "test_fn.vload_constant_int4", |
| "test_fn.vload_constant_int8", |
| "test_fn.vload_constant_int16", |
| "test_fn.vload_constant_uint2", |
| "test_fn.vload_constant_uint3", |
| "test_fn.vload_constant_uint4", |
| "test_fn.vload_constant_uint8", |
| "test_fn.vload_constant_uint16", |
| "test_fn.vload_constant_long2", |
| "test_fn.vload_constant_long3", |
| "test_fn.vload_constant_long4", |
| "test_fn.vload_constant_long8", |
| "test_fn.vload_constant_long16", |
| "test_fn.vload_constant_ulong2", |
| "test_fn.vload_constant_ulong3", |
| "test_fn.vload_constant_ulong4", |
| "test_fn.vload_constant_ulong8", |
| "test_fn.vload_constant_ulong16", |
| "test_fn.vload_constant_float2", |
| "test_fn.vload_constant_float3", |
| "test_fn.vload_constant_float4", |
| "test_fn.vload_constant_float8", |
| "test_fn.vload_constant_float16", |
| "test_fn.vload_private_char2", |
| "test_fn.vload_private_char3", |
| "test_fn.vload_private_char4", |
| "test_fn.vload_private_char8", |
| "test_fn.vload_private_char16", |
| "test_fn.vload_private_uchar2", |
| "test_fn.vload_private_uchar3", |
| "test_fn.vload_private_uchar4", |
| "test_fn.vload_private_uchar8", |
| "test_fn.vload_private_uchar16", |
| "test_fn.vload_private_short2", |
| "test_fn.vload_private_short3", |
| "test_fn.vload_private_short4", |
| "test_fn.vload_private_short8", |
| "test_fn.vload_private_short16", |
| "test_fn.vload_private_ushort2", |
| "test_fn.vload_private_ushort3", |
| "test_fn.vload_private_ushort4", |
| "test_fn.vload_private_ushort8", |
| "test_fn.vload_private_ushort16", |
| "test_fn.vload_private_int2", |
| "test_fn.vload_private_int3", |
| "test_fn.vload_private_int4", |
| "test_fn.vload_private_int8", |
| "test_fn.vload_private_int16", |
| "test_fn.vload_private_uint2", |
| "test_fn.vload_private_uint3", |
| "test_fn.vload_private_uint4", |
| "test_fn.vload_private_uint8", |
| "test_fn.vload_private_uint16", |
| "test_fn.vload_private_long2", |
| "test_fn.vload_private_long3", |
| "test_fn.vload_private_long4", |
| "test_fn.vload_private_long8", |
| "test_fn.vload_private_long16", |
| "test_fn.vload_private_ulong2", |
| "test_fn.vload_private_ulong3", |
| "test_fn.vload_private_ulong4", |
| "test_fn.vload_private_ulong8", |
| "test_fn.vload_private_ulong16", |
| "test_fn.vload_private_float2", |
| "test_fn.vload_private_float3", |
| "test_fn.vload_private_float4", |
| "test_fn.vload_private_float8", |
| "test_fn.vload_private_float16", |
| "test_fn.vload_local_char2", |
| "test_fn.vload_local_char3", |
| "test_fn.vload_local_char4", |
| "test_fn.vload_local_char8", |
| "test_fn.vload_local_char16", |
| "test_fn.vload_local_uchar2", |
| "test_fn.vload_local_uchar3", |
| "test_fn.vload_local_uchar4", |
| "test_fn.vload_local_uchar8", |
| "test_fn.vload_local_uchar16", |
| "test_fn.vload_local_short2", |
| "test_fn.vload_local_short3", |
| "test_fn.vload_local_short4", |
| "test_fn.vload_local_short8", |
| "test_fn.vload_local_short16", |
| "test_fn.vload_local_ushort2", |
| "test_fn.vload_local_ushort3", |
| "test_fn.vload_local_ushort4", |
| "test_fn.vload_local_ushort8", |
| "test_fn.vload_local_ushort16", |
| "test_fn.vload_local_int2", |
| "test_fn.vload_local_int3", |
| "test_fn.vload_local_int4", |
| "test_fn.vload_local_int8", |
| "test_fn.vload_local_int16", |
| "test_fn.vload_local_uint2", |
| "test_fn.vload_local_uint3", |
| "test_fn.vload_local_uint4", |
| "test_fn.vload_local_uint8", |
| "test_fn.vload_local_uint16", |
| "test_fn.vload_local_long2", |
| "test_fn.vload_local_long3", |
| "test_fn.vload_local_long4", |
| "test_fn.vload_local_long8", |
| "test_fn.vload_local_long16", |
| "test_fn.vload_local_ulong2", |
| "test_fn.vload_local_ulong3", |
| "test_fn.vload_local_ulong4", |
| "test_fn.vload_local_ulong8", |
| "test_fn.vload_local_ulong16", |
| "test_fn.vload_local_float2", |
| "test_fn.vload_local_float3", |
| "test_fn.vload_local_float4", |
| "test_fn.vload_local_float8", |
| "test_fn.vload_local_float16", |
| "test_fn.vstore_global_char2", |
| "test_fn.vstore_global_char3", |
| "test_fn.vstore_global_char4", |
| "test_fn.vstore_global_char8", |
| "test_fn.vstore_global_char16", |
| "test_fn.vstore_global_uchar2", |
| "test_fn.vstore_global_uchar3", |
| "test_fn.vstore_global_uchar4", |
| "test_fn.vstore_global_uchar8", |
| "test_fn.vstore_global_uchar16", |
| "test_fn.vstore_global_short2", |
| "test_fn.vstore_global_short3", |
| "test_fn.vstore_global_short4", |
| "test_fn.vstore_global_short8", |
| "test_fn.vstore_global_short16", |
| "test_fn.vstore_global_ushort2", |
| "test_fn.vstore_global_ushort3", |
| "test_fn.vstore_global_ushort4", |
| "test_fn.vstore_global_ushort8", |
| "test_fn.vstore_global_ushort16", |
| "test_fn.vstore_global_int2", |
| "test_fn.vstore_global_int3", |
| "test_fn.vstore_global_int4", |
| "test_fn.vstore_global_int8", |
| "test_fn.vstore_global_int16", |
| "test_fn.vstore_global_uint2", |
| "test_fn.vstore_global_uint3", |
| "test_fn.vstore_global_uint4", |
| "test_fn.vstore_global_uint8", |
| "test_fn.vstore_global_uint16", |
| "test_fn.vstore_global_long2", |
| "test_fn.vstore_global_long3", |
| "test_fn.vstore_global_long4", |
| "test_fn.vstore_global_long8", |
| "test_fn.vstore_global_long16", |
| "test_fn.vstore_global_ulong2", |
| "test_fn.vstore_global_ulong3", |
| "test_fn.vstore_global_ulong4", |
| "test_fn.vstore_global_ulong8", |
| "test_fn.vstore_global_ulong16", |
| "test_fn.vstore_global_float2", |
| "test_fn.vstore_global_float3", |
| "test_fn.vstore_global_float4", |
| "test_fn.vstore_global_float8", |
| "test_fn.vstore_global_float16", |
| "test_fn.vstore_local_char2", |
| "test_fn.vstore_local_char3", |
| "test_fn.vstore_local_char4", |
| "test_fn.vstore_local_char8", |
| "test_fn.vstore_local_char16", |
| "test_fn.vstore_local_uchar2", |
| "test_fn.vstore_local_uchar3", |
| "test_fn.vstore_local_uchar4", |
| "test_fn.vstore_local_uchar8", |
| "test_fn.vstore_local_uchar16", |
| "test_fn.vstore_local_short2", |
| "test_fn.vstore_local_short3", |
| "test_fn.vstore_local_short4", |
| "test_fn.vstore_local_short8", |
| "test_fn.vstore_local_short16", |
| "test_fn.vstore_local_ushort2", |
| "test_fn.vstore_local_ushort3", |
| "test_fn.vstore_local_ushort4", |
| "test_fn.vstore_local_ushort8", |
| "test_fn.vstore_local_ushort16", |
| "test_fn.vstore_local_int2", |
| "test_fn.vstore_local_int3", |
| "test_fn.vstore_local_int4", |
| "test_fn.vstore_local_int8", |
| "test_fn.vstore_local_int16", |
| "test_fn.vstore_local_uint2", |
| "test_fn.vstore_local_uint3", |
| "test_fn.vstore_local_uint4", |
| "test_fn.vstore_local_uint8", |
| "test_fn.vstore_local_uint16", |
| "test_fn.vstore_local_long2", |
| "test_fn.vstore_local_long3", |
| "test_fn.vstore_local_long4", |
| "test_fn.vstore_local_long8", |
| "test_fn.vstore_local_long16", |
| "test_fn.vstore_local_ulong2", |
| "test_fn.vstore_local_ulong3", |
| "test_fn.vstore_local_ulong4", |
| "test_fn.vstore_local_ulong8", |
| "test_fn.vstore_local_ulong16", |
| "test_fn.vstore_local_float2", |
| "test_fn.vstore_local_float3", |
| "test_fn.vstore_local_float4", |
| "test_fn.vstore_local_float8", |
| "test_fn.vstore_local_float16", |
| "test_fn.vstore_private_char2", |
| "test_fn.vstore_private_char3", |
| "test_fn.vstore_private_char4", |
| "test_fn.vstore_private_char8", |
| "test_fn.vstore_private_char16", |
| "test_fn.vstore_private_uchar2", |
| "test_fn.vstore_private_uchar3", |
| "test_fn.vstore_private_uchar4", |
| "test_fn.vstore_private_uchar8", |
| "test_fn.vstore_private_uchar16", |
| "test_fn.vstore_private_short2", |
| "test_fn.vstore_private_short3", |
| "test_fn.vstore_private_short4", |
| "test_fn.vstore_private_short8", |
| "test_fn.vstore_private_short16", |
| "test_fn.vstore_private_ushort2", |
| "test_fn.vstore_private_ushort3", |
| "test_fn.vstore_private_ushort4", |
| "test_fn.vstore_private_ushort8", |
| "test_fn.vstore_private_ushort16", |
| "test_fn.vstore_private_int2", |
| "test_fn.vstore_private_int3", |
| "test_fn.vstore_private_int4", |
| "test_fn.vstore_private_int8", |
| "test_fn.vstore_private_int16", |
| "test_fn.vstore_private_uint2", |
| "test_fn.vstore_private_uint3", |
| "test_fn.vstore_private_uint4", |
| "test_fn.vstore_private_uint8", |
| "test_fn.vstore_private_uint16", |
| "test_fn.vstore_private_long2", |
| "test_fn.vstore_private_long3", |
| "test_fn.vstore_private_long4", |
| "test_fn.vstore_private_long8", |
| "test_fn.vstore_private_long16", |
| "test_fn.vstore_private_ulong2", |
| "test_fn.vstore_private_ulong3", |
| "test_fn.vstore_private_ulong4", |
| "test_fn.vstore_private_ulong8", |
| "test_fn.vstore_private_ulong16", |
| "test_fn.vstore_private_float2", |
| "test_fn.vstore_private_float3", |
| "test_fn.vstore_private_float4", |
| "test_fn.vstore_private_float8", |
| "test_fn.vstore_private_float16", |
| "test_fn.async_copy_global_to_local_char", |
| "test_fn.async_copy_global_to_local_char2", |
| "test_fn.async_copy_global_to_local_char4", |
| "test_fn.async_copy_global_to_local_char8", |
| "test_fn.async_copy_global_to_local_char16", |
| "test_fn.async_copy_global_to_local_uchar", |
| "test_fn.async_copy_global_to_local_uchar2", |
| "test_fn.async_copy_global_to_local_uchar4", |
| "test_fn.async_copy_global_to_local_uchar8", |
| "test_fn.async_copy_global_to_local_uchar16", |
| "test_fn.async_copy_global_to_local_short", |
| "test_fn.async_copy_global_to_local_short2", |
| "test_fn.async_copy_global_to_local_short4", |
| "test_fn.async_copy_global_to_local_short8", |
| "test_fn.async_copy_global_to_local_short16", |
| "test_fn.async_copy_global_to_local_ushort", |
| "test_fn.async_copy_global_to_local_ushort2", |
| "test_fn.async_copy_global_to_local_ushort4", |
| "test_fn.async_copy_global_to_local_ushort8", |
| "test_fn.async_copy_global_to_local_ushort16", |
| "test_fn.async_copy_global_to_local_int", |
| "test_fn.async_copy_global_to_local_int2", |
| "test_fn.async_copy_global_to_local_int4", |
| "test_fn.async_copy_global_to_local_int8", |
| "test_fn.async_copy_global_to_local_int16", |
| "test_fn.async_copy_global_to_local_uint", |
| "test_fn.async_copy_global_to_local_uint2", |
| "test_fn.async_copy_global_to_local_uint4", |
| "test_fn.async_copy_global_to_local_uint8", |
| "test_fn.async_copy_global_to_local_uint16", |
| "test_fn.async_copy_global_to_local_long", |
| "test_fn.async_copy_global_to_local_long2", |
| "test_fn.async_copy_global_to_local_long4", |
| "test_fn.async_copy_global_to_local_long8", |
| "test_fn.async_copy_global_to_local_long16", |
| "test_fn.async_copy_global_to_local_ulong", |
| "test_fn.async_copy_global_to_local_ulong2", |
| "test_fn.async_copy_global_to_local_ulong4", |
| "test_fn.async_copy_global_to_local_ulong8", |
| "test_fn.async_copy_global_to_local_ulong16", |
| "test_fn.async_copy_global_to_local_float", |
| "test_fn.async_copy_global_to_local_float2", |
| "test_fn.async_copy_global_to_local_float4", |
| "test_fn.async_copy_global_to_local_float8", |
| "test_fn.async_copy_global_to_local_float16", |
| "test_fn.async_copy_global_to_local_double", |
| "test_fn.async_copy_global_to_local_double2", |
| "test_fn.async_copy_global_to_local_double4", |
| "test_fn.async_copy_global_to_local_double8", |
| "test_fn.async_copy_global_to_local_double16", |
| "test_fn.async_copy_local_to_global_char", |
| "test_fn.async_copy_local_to_global_char2", |
| "test_fn.async_copy_local_to_global_char4", |
| "test_fn.async_copy_local_to_global_char8", |
| "test_fn.async_copy_local_to_global_char16", |
| "test_fn.async_copy_local_to_global_uchar", |
| "test_fn.async_copy_local_to_global_uchar2", |
| "test_fn.async_copy_local_to_global_uchar4", |
| "test_fn.async_copy_local_to_global_uchar8", |
| "test_fn.async_copy_local_to_global_uchar16", |
| "test_fn.async_copy_local_to_global_short", |
| "test_fn.async_copy_local_to_global_short2", |
| "test_fn.async_copy_local_to_global_short4", |
| "test_fn.async_copy_local_to_global_short8", |
| "test_fn.async_copy_local_to_global_short16", |
| "test_fn.async_copy_local_to_global_ushort", |
| "test_fn.async_copy_local_to_global_ushort2", |
| "test_fn.async_copy_local_to_global_ushort4", |
| "test_fn.async_copy_local_to_global_ushort8", |
| "test_fn.async_copy_local_to_global_ushort16", |
| "test_fn.async_copy_local_to_global_int", |
| "test_fn.async_copy_local_to_global_int2", |
| "test_fn.async_copy_local_to_global_int4", |
| "test_fn.async_copy_local_to_global_int8", |
| "test_fn.async_copy_local_to_global_int16", |
| "test_fn.async_copy_local_to_global_uint", |
| "test_fn.async_copy_local_to_global_uint2", |
| "test_fn.async_copy_local_to_global_uint4", |
| "test_fn.async_copy_local_to_global_uint8", |
| "test_fn.async_copy_local_to_global_uint16", |
| "test_fn.async_copy_local_to_global_long", |
| "test_fn.async_copy_local_to_global_long2", |
| "test_fn.async_copy_local_to_global_long4", |
| "test_fn.async_copy_local_to_global_long8", |
| "test_fn.async_copy_local_to_global_long16", |
| "test_fn.async_copy_local_to_global_ulong", |
| "test_fn.async_copy_local_to_global_ulong2", |
| "test_fn.async_copy_local_to_global_ulong4", |
| "test_fn.async_copy_local_to_global_ulong8", |
| "test_fn.async_copy_local_to_global_ulong16", |
| "test_fn.async_copy_local_to_global_float", |
| "test_fn.async_copy_local_to_global_float2", |
| "test_fn.async_copy_local_to_global_float4", |
| "test_fn.async_copy_local_to_global_float8", |
| "test_fn.async_copy_local_to_global_float16", |
| "test_fn.async_strided_copy_global_to_local_char", |
| "test_fn.async_strided_copy_global_to_local_char2", |
| "test_fn.async_strided_copy_global_to_local_char4", |
| "test_fn.async_strided_copy_global_to_local_char8", |
| "test_fn.async_strided_copy_global_to_local_char16", |
| "test_fn.async_strided_copy_global_to_local_uchar", |
| "test_fn.async_strided_copy_global_to_local_uchar2", |
| "test_fn.async_strided_copy_global_to_local_uchar4", |
| "test_fn.async_strided_copy_global_to_local_uchar8", |
| "test_fn.async_strided_copy_global_to_local_uchar16", |
| "test_fn.async_strided_copy_global_to_local_short", |
| "test_fn.async_strided_copy_global_to_local_short2", |
| "test_fn.async_strided_copy_global_to_local_short4", |
| "test_fn.async_strided_copy_global_to_local_short8", |
| "test_fn.async_strided_copy_global_to_local_short16", |
| "test_fn.async_strided_copy_global_to_local_ushort", |
| "test_fn.async_strided_copy_global_to_local_ushort2", |
| "test_fn.async_strided_copy_global_to_local_ushort4", |
| "test_fn.async_strided_copy_global_to_local_ushort8", |
| "test_fn.async_strided_copy_global_to_local_ushort16", |
| "test_fn.async_strided_copy_global_to_local_int", |
| "test_fn.async_strided_copy_global_to_local_int2", |
| "test_fn.async_strided_copy_global_to_local_int4", |
| "test_fn.async_strided_copy_global_to_local_int8", |
| "test_fn.async_strided_copy_global_to_local_int16", |
| "test_fn.async_strided_copy_global_to_local_uint", |
| "test_fn.async_strided_copy_global_to_local_uint2", |
| "test_fn.async_strided_copy_global_to_local_uint4", |
| "test_fn.async_strided_copy_global_to_local_uint8", |
| "test_fn.async_strided_copy_global_to_local_uint16", |
| "test_fn.async_strided_copy_global_to_local_long", |
| "test_fn.async_strided_copy_global_to_local_long2", |
| "test_fn.async_strided_copy_global_to_local_long4", |
| "test_fn.async_strided_copy_global_to_local_long8", |
| "test_fn.async_strided_copy_global_to_local_long16", |
| "test_fn.async_strided_copy_global_to_local_ulong", |
| "test_fn.async_strided_copy_global_to_local_ulong2", |
| "test_fn.async_strided_copy_global_to_local_ulong4", |
| "test_fn.async_strided_copy_global_to_local_ulong8", |
| "test_fn.async_strided_copy_global_to_local_ulong16", |
| "test_fn.async_strided_copy_global_to_local_float", |
| "test_fn.async_strided_copy_global_to_local_float2", |
| "test_fn.async_strided_copy_global_to_local_float4", |
| "test_fn.async_strided_copy_global_to_local_float8", |
| "test_fn.async_strided_copy_global_to_local_float16", |
| "test_fn.async_strided_copy_local_to_global_char", |
| "test_fn.async_strided_copy_local_to_global_char2", |
| "test_fn.async_strided_copy_local_to_global_char4", |
| "test_fn.async_strided_copy_local_to_global_char8", |
| "test_fn.async_strided_copy_local_to_global_char16", |
| "test_fn.async_strided_copy_local_to_global_uchar", |
| "test_fn.async_strided_copy_local_to_global_uchar2", |
| "test_fn.async_strided_copy_local_to_global_uchar4", |
| "test_fn.async_strided_copy_local_to_global_uchar8", |
| "test_fn.async_strided_copy_local_to_global_uchar16", |
| "test_fn.async_strided_copy_local_to_global_short", |
| "test_fn.async_strided_copy_local_to_global_short2", |
| "test_fn.async_strided_copy_local_to_global_short4", |
| "test_fn.async_strided_copy_local_to_global_short8", |
| "test_fn.async_strided_copy_local_to_global_short16", |
| "test_fn.async_strided_copy_local_to_global_ushort", |
| "test_fn.async_strided_copy_local_to_global_ushort2", |
| "test_fn.async_strided_copy_local_to_global_ushort4", |
| "test_fn.async_strided_copy_local_to_global_ushort8", |
| "test_fn.async_strided_copy_local_to_global_ushort16", |
| "test_fn.async_strided_copy_local_to_global_int", |
| "test_fn.async_strided_copy_local_to_global_int2", |
| "test_fn.async_strided_copy_local_to_global_int4", |
| "test_fn.async_strided_copy_local_to_global_int8", |
| "test_fn.async_strided_copy_local_to_global_int16", |
| "test_fn.async_strided_copy_local_to_global_uint", |
| "test_fn.async_strided_copy_local_to_global_uint2", |
| "test_fn.async_strided_copy_local_to_global_uint4", |
| "test_fn.async_strided_copy_local_to_global_uint8", |
| "test_fn.async_strided_copy_local_to_global_uint16", |
| "test_fn.async_strided_copy_local_to_global_long", |
| "test_fn.async_strided_copy_local_to_global_long2", |
| "test_fn.async_strided_copy_local_to_global_long4", |
| "test_fn.async_strided_copy_local_to_global_long8", |
| "test_fn.async_strided_copy_local_to_global_long16", |
| "test_fn.async_strided_copy_local_to_global_ulong", |
| "test_fn.async_strided_copy_local_to_global_ulong2", |
| "test_fn.async_strided_copy_local_to_global_ulong4", |
| "test_fn.async_strided_copy_local_to_global_ulong8", |
| "test_fn.async_strided_copy_local_to_global_ulong16", |
| "test_fn.async_strided_copy_local_to_global_float", |
| "test_fn.async_strided_copy_local_to_global_float2", |
| "test_fn.async_strided_copy_local_to_global_float4", |
| "test_fn.async_strided_copy_local_to_global_float8", |
| "test_fn.async_strided_copy_local_to_global_float16", |
| "test_fn.prefetch_char", |
| "test_fn.prefetch_char2", |
| "test_fn.prefetch_char4", |
| "test_fn.prefetch_char8", |
| "test_fn.prefetch_char16", |
| "test_fn.prefetch_uchar", |
| "test_fn.prefetch_uchar2", |
| "test_fn.prefetch_uchar4", |
| "test_fn.prefetch_uchar8", |
| "test_fn.prefetch_uchar16", |
| "test_fn.prefetch_short", |
| "test_fn.prefetch_short2", |
| "test_fn.prefetch_short4", |
| "test_fn.prefetch_short8", |
| "test_fn.prefetch_short16", |
| "test_fn.prefetch_ushort", |
| "test_fn.prefetch_ushort2", |
| "test_fn.prefetch_ushort4", |
| "test_fn.prefetch_ushort8", |
| "test_fn.prefetch_ushort16", |
| "test_fn.prefetch_int", |
| "test_fn.prefetch_int2", |
| "test_fn.prefetch_int4", |
| "test_fn.prefetch_int8", |
| "test_fn.prefetch_int16", |
| "test_fn.prefetch_uint", |
| "test_fn.prefetch_uint2", |
| "test_fn.prefetch_uint4", |
| "test_fn.prefetch_uint8", |
| "test_fn.prefetch_uint16", |
| "test_fn.prefetch_long", |
| "test_fn.prefetch_long2", |
| "test_fn.prefetch_long4", |
| "test_fn.prefetch_long8", |
| "test_fn.prefetch_long16", |
| "test_fn.prefetch_ulong", |
| "test_fn.prefetch_ulong2", |
| "test_fn.prefetch_ulong4", |
| "test_fn.prefetch_ulong8", |
| "test_fn.prefetch_ulong16", |
| "test_fn.prefetch_float", |
| "test_fn.prefetch_float2", |
| "test_fn.prefetch_float4", |
| "test_fn.prefetch_float8", |
| "test_fn.prefetch_float16", |
| }; |
| |
| log_info("test_basic\n"); |
| return test_suite(device, size_t_width, folder, test_name, sizeof(test_name) / sizeof(const char *), ""); |
| } |
| |
| bool test_basic_double (cl_device_id device, cl_uint size_t_width, const char *folder) |
| { |
| static const char* test_name[] = { |
| "sample_test.vec_type_hint_double", |
| "sample_test.vec_type_hint_double2", |
| "sample_test.vec_type_hint_double4", |
| "sample_test.vec_type_hint_double8", |
| "sample_test.vec_type_hint_double16", |
| "test.kernel_memory_alignment_private_double", |
| "test_fn.vload_global_double2", |
| "test_fn.vload_global_double3", |
| "test_fn.vload_global_double4", |
| "test_fn.vload_global_double8", |
| "test_fn.vload_global_double16", |
| "test_fn.vload_constant_double2", |
| "test_fn.vload_constant_double3", |
| "test_fn.vload_constant_double4", |
| "test_fn.vload_constant_double8", |
| "test_fn.vload_constant_double16", |
| "test_fn.vstore_global_double2", |
| "test_fn.vstore_global_double3", |
| "test_fn.vstore_global_double4", |
| "test_fn.vstore_global_double8", |
| "test_fn.vstore_global_double16", |
| "test_fn.vload_local_double2", |
| "test_fn.vload_local_double3", |
| "test_fn.vload_local_double4", |
| "test_fn.vload_local_double8", |
| "test_fn.vload_local_double16", |
| "test_fn.vstore_global_double2", |
| "test_fn.vstore_global_double3", |
| "test_fn.vstore_global_double4", |
| "test_fn.vstore_global_double8", |
| "test_fn.vstore_global_double16", |
| "test_fn.vstore_local_double2", |
| "test_fn.vstore_local_double3", |
| "test_fn.vstore_local_double4", |
| "test_fn.vstore_local_double8", |
| "test_fn.vstore_local_double16", |
| "test_fn.vstore_private_double2", |
| "test_fn.vstore_private_double3", |
| "test_fn.vstore_private_double4", |
| "test_fn.vstore_private_double8", |
| "test_fn.vstore_private_double16", |
| "test_fn.async_copy_local_to_global_double", |
| "test_fn.async_copy_local_to_global_double2", |
| "test_fn.async_copy_local_to_global_double4", |
| "test_fn.async_copy_local_to_global_double8", |
| "test_fn.async_copy_local_to_global_double16", |
| "test_fn.async_strided_copy_global_to_local_double", |
| "test_fn.async_strided_copy_global_to_local_double2", |
| "test_fn.async_strided_copy_global_to_local_double4", |
| "test_fn.async_strided_copy_global_to_local_double8", |
| "test_fn.async_strided_copy_global_to_local_double16", |
| "test_fn.async_strided_copy_local_to_global_double", |
| "test_fn.async_strided_copy_local_to_global_double2", |
| "test_fn.async_strided_copy_local_to_global_double4", |
| "test_fn.async_strided_copy_local_to_global_double8", |
| "test_fn.async_strided_copy_local_to_global_double16", |
| "test_fn.prefetch_double", |
| "test_fn.prefetch_double2", |
| "test_fn.prefetch_double4", |
| "test_fn.prefetch_double8", |
| "test_fn.prefetch_double16", |
| }; |
| |
| log_info("test_basic_double\n"); |
| return test_suite(device, size_t_width, folder, test_name, sizeof(test_name) / sizeof(const char *), "cl_khr_fp64"); |
| } |
| |
| |
| bool test_commonfns (cl_device_id device, cl_uint size_t_width, const char *folder) |
| { |
| static const char* test_name[] = { |
| "test_clamp.test_clamp_float", |
| "test_clamp.test_clamp_float2", |
| "test_clamp.test_clamp_float4", |
| "test_clamp.test_clamp_float8", |
| "test_clamp.test_clamp_float16", |
| "test_clamp.test_clamp_float3", |
| "test_degrees", |
| "test_degrees2", |
| "test_degrees4", |
| "test_degrees8", |
| "test_degrees16", |
| "test_degrees3", |
| "test_fmax", |
| "test_fmax2", |
| "test_fmax4", |
| "test_fmax8", |
| "test_fmax16", |
| "test_fmax3", |
| "test_fmin", |
| "test_fmin2", |
| "test_fmin4", |
| "test_fmin8", |
| "test_fmin16", |
| "test_fmin3", |
| "test_fn.test_max_float", |
| "test_fn.test_max_float2", |
| "test_fn.test_max_float4", |
| "test_fn.test_max_float8", |
| "test_fn.test_max_float16", |
| "test_fn.test_max_float3", |
| "test_fn.test_min_float", |
| "test_fn.test_min_float2", |
| "test_fn.test_min_float4", |
| "test_fn.test_min_float8", |
| "test_fn.test_min_float16", |
| "test_fn.test_min_float3", |
| "test_mix", |
| "test_radians", |
| "test_radians2", |
| "test_radians4", |
| "test_radians8", |
| "test_radians16", |
| "test_radians3", |
| "test_step", |
| "test_step2", |
| "test_step4", |
| "test_step8", |
| "test_step16", |
| "test_step3", |
| "test_smoothstep", |
| "test_smoothstep2", |
| "test_smoothstep4", |
| "test_smoothstep8", |
| "test_smoothstep16", |
| "test_smoothstep3", |
| "test_sign", |
| "test_sign2", |
| "test_sign4", |
| "test_sign8", |
| "test_sign16", |
| "test_sign3", |
| }; |
| |
| log_info("test_commonfns\n"); |
| return test_suite(device, size_t_width, folder, test_name, sizeof(test_name) / sizeof(const char *), ""); |
| } |
| |
| |
| bool test_commonfns_double (cl_device_id device, cl_uint size_t_width, const char *folder) |
| { |
| static const char* test_name[] = { |
| "test_clamp.test_clamp_double", |
| "test_clamp.test_clamp_double2", |
| "test_clamp.test_clamp_double4", |
| "test_clamp.test_clamp_double8", |
| "test_clamp.test_clamp_double16", |
| "test_clamp.test_clamp_double3", |
| "test_degrees_double", |
| "test_degrees2_double", |
| "test_degrees4_double", |
| "test_degrees8_double", |
| "test_degrees16_double", |
| "test_degrees3_double", |
| "test_fn.test_max_double", |
| "test_fn.test_max_double2", |
| "test_fn.test_max_double4", |
| "test_fn.test_max_double8", |
| "test_fn.test_max_double16", |
| "test_fn.test_max_double3", |
| "test_fn.test_min_double", |
| "test_fn.test_min_double2", |
| "test_fn.test_min_double4", |
| "test_fn.test_min_double8", |
| "test_fn.test_min_double16", |
| "test_fn.test_min_double3", |
| "test_radians_double", |
| "test_radians2_double", |
| "test_radians4_double", |
| "test_radians8_double", |
| "test_radians16_double", |
| "test_radians3_double", |
| "test_step_double", |
| "test_step2_double", |
| "test_step4_double", |
| "test_step8_double", |
| "test_step16_double", |
| "test_step3_double", |
| "test_sign_double", |
| "test_sign2_double", |
| "test_sign4_double", |
| "test_sign8_double", |
| "test_sign16_double", |
| "test_sign3_double", |
| }; |
| |
| log_info("test_commonfns_double\n"); |
| return test_suite(device, size_t_width, folder, test_name, sizeof(test_name) / sizeof(const char *), "cl_khr_fp64"); |
| } |
| |
| bool test_conversions (cl_device_id device, cl_uint size_t_width, const char *folder) |
| { |
| static const char* test_name[] = { |
| "convert2_type_roundingmode_type_f", |
| "convert3_type_roundingmode_type_f", |
| "convert4_type_roundingmode_type_f", |
| "convert8_type_roundingmode_type_f", |
| "convert16_type_roundingmode_type_f", |
| "test_implicit_uchar_uchar", |
| "test_convert_uchar_uchar", |
| "test_convert_uchar_rte_uchar", |
| "test_convert_uchar_rtp_uchar", |
| "test_convert_uchar_rtn_uchar", |
| "test_convert_uchar_rtz_uchar", |
| "test_convert_uchar_sat_uchar", |
| "test_convert_uchar_sat_rte_uchar", |
| "test_convert_uchar_sat_rtp_uchar", |
| "test_convert_uchar_sat_rtn_uchar", |
| "test_convert_uchar_sat_rtz_uchar", |
| "test_implicit_uchar_char", |
| "test_convert_uchar_char", |
| "test_convert_uchar_rte_char", |
| "test_convert_uchar_rtp_char", |
| "test_convert_uchar_rtn_char", |
| "test_convert_uchar_rtz_char", |
| "test_convert_uchar_sat_char", |
| "test_convert_uchar_sat_rte_char", |
| "test_convert_uchar_sat_rtp_char", |
| "test_convert_uchar_sat_rtn_char", |
| "test_convert_uchar_sat_rtz_char", |
| "test_implicit_uchar_ushort", |
| "test_convert_uchar_ushort", |
| "test_convert_uchar_rte_ushort", |
| "test_convert_uchar_rtp_ushort", |
| "test_convert_uchar_rtn_ushort", |
| "test_convert_uchar_rtz_ushort", |
| "test_convert_uchar_sat_ushort", |
| "test_convert_uchar_sat_rte_ushort", |
| "test_convert_uchar_sat_rtp_ushort", |
| "test_convert_uchar_sat_rtn_ushort", |
| "test_convert_uchar_sat_rtz_ushort", |
| "test_implicit_uchar_short", |
| "test_convert_uchar_short", |
| "test_convert_uchar_rte_short", |
| "test_convert_uchar_rtp_short", |
| "test_convert_uchar_rtn_short", |
| "test_convert_uchar_rtz_short", |
| "test_convert_uchar_sat_short", |
| "test_convert_uchar_sat_rte_short", |
| "test_convert_uchar_sat_rtp_short", |
| "test_convert_uchar_sat_rtn_short", |
| "test_convert_uchar_sat_rtz_short", |
| "test_implicit_uchar_uint", |
| "test_convert_uchar_uint", |
| "test_convert_uchar_rte_uint", |
| "test_convert_uchar_rtp_uint", |
| "test_convert_uchar_rtn_uint", |
| "test_convert_uchar_rtz_uint", |
| "test_convert_uchar_sat_uint", |
| "test_convert_uchar_sat_rte_uint", |
| "test_convert_uchar_sat_rtp_uint", |
| "test_convert_uchar_sat_rtn_uint", |
| "test_convert_uchar_sat_rtz_uint", |
| "test_implicit_uchar_int", |
| "test_convert_uchar_int", |
| "test_convert_uchar_rte_int", |
| "test_convert_uchar_rtp_int", |
| "test_convert_uchar_rtn_int", |
| "test_convert_uchar_rtz_int", |
| "test_convert_uchar_sat_int", |
| "test_convert_uchar_sat_rte_int", |
| "test_convert_uchar_sat_rtp_int", |
| "test_convert_uchar_sat_rtn_int", |
| "test_convert_uchar_sat_rtz_int", |
| "test_implicit_uchar_float", |
| "test_convert_uchar_float", |
| "test_convert_uchar_rte_float", |
| "test_convert_uchar_rtp_float", |
| "test_convert_uchar_rtn_float", |
| "test_convert_uchar_rtz_float", |
| "test_convert_uchar_sat_float", |
| "test_convert_uchar_sat_rte_float", |
| "test_convert_uchar_sat_rtp_float", |
| "test_convert_uchar_sat_rtn_float", |
| "test_convert_uchar_sat_rtz_float", |
| "test_implicit_uchar_ulong", |
| "test_convert_uchar_ulong", |
| "test_convert_uchar_rte_ulong", |
| "test_convert_uchar_rtp_ulong", |
| "test_convert_uchar_rtn_ulong", |
| "test_convert_uchar_rtz_ulong", |
| "test_convert_uchar_sat_ulong", |
| "test_convert_uchar_sat_rte_ulong", |
| "test_convert_uchar_sat_rtp_ulong", |
| "test_convert_uchar_sat_rtn_ulong", |
| "test_convert_uchar_sat_rtz_ulong", |
| "test_implicit_uchar_long", |
| "test_convert_uchar_long", |
| "test_convert_uchar_rte_long", |
| "test_convert_uchar_rtp_long", |
| "test_convert_uchar_rtn_long", |
| "test_convert_uchar_rtz_long", |
| "test_convert_uchar_sat_long", |
| "test_convert_uchar_sat_rte_long", |
| "test_convert_uchar_sat_rtp_long", |
| "test_convert_uchar_sat_rtn_long", |
| "test_convert_uchar_sat_rtz_long", |
| "test_implicit_char_uchar", |
| "test_convert_char_uchar", |
| "test_convert_char_rte_uchar", |
| "test_convert_char_rtp_uchar", |
| "test_convert_char_rtn_uchar", |
| "test_convert_char_rtz_uchar", |
| "test_convert_char_sat_uchar", |
| "test_convert_char_sat_rte_uchar", |
| "test_convert_char_sat_rtp_uchar", |
| "test_convert_char_sat_rtn_uchar", |
| "test_convert_char_sat_rtz_uchar", |
| "test_implicit_char_char", |
| "test_convert_char_char", |
| "test_convert_char_rte_char", |
| "test_convert_char_rtp_char", |
| "test_convert_char_rtn_char", |
| "test_convert_char_rtz_char", |
| "test_convert_char_sat_char", |
| "test_convert_char_sat_rte_char", |
| "test_convert_char_sat_rtp_char", |
| "test_convert_char_sat_rtn_char", |
| "test_convert_char_sat_rtz_char", |
| "test_implicit_char_ushort", |
| "test_convert_char_ushort", |
| "test_convert_char_rte_ushort", |
| "test_convert_char_rtp_ushort", |
| "test_convert_char_rtn_ushort", |
| "test_convert_char_rtz_ushort", |
| "test_convert_char_sat_ushort", |
| "test_convert_char_sat_rte_ushort", |
| "test_convert_char_sat_rtp_ushort", |
| "test_convert_char_sat_rtn_ushort", |
| "test_convert_char_sat_rtz_ushort", |
| "test_implicit_char_short", |
| "test_convert_char_short", |
| "test_convert_char_rte_short", |
| "test_convert_char_rtp_short", |
| "test_convert_char_rtn_short", |
| "test_convert_char_rtz_short", |
| "test_convert_char_sat_short", |
| "test_convert_char_sat_rte_short", |
| "test_convert_char_sat_rtp_short", |
| "test_convert_char_sat_rtn_short", |
| "test_convert_char_sat_rtz_short", |
| "test_implicit_char_uint", |
| "test_convert_char_uint", |
| "test_convert_char_rte_uint", |
| "test_convert_char_rtp_uint", |
| "test_convert_char_rtn_uint", |
| "test_convert_char_rtz_uint", |
| "test_convert_char_sat_uint", |
| "test_convert_char_sat_rte_uint", |
| "test_convert_char_sat_rtp_uint", |
| "test_convert_char_sat_rtn_uint", |
| "test_convert_char_sat_rtz_uint", |
| "test_implicit_char_int", |
| "test_convert_char_int", |
| "test_convert_char_rte_int", |
| "test_convert_char_rtp_int", |
| "test_convert_char_rtn_int", |
| "test_convert_char_rtz_int", |
| "test_convert_char_sat_int", |
| "test_convert_char_sat_rte_int", |
| "test_convert_char_sat_rtp_int", |
| "test_convert_char_sat_rtn_int", |
| "test_convert_char_sat_rtz_int", |
| "test_implicit_char_float", |
| "test_convert_char_float", |
| "test_convert_char_rte_float", |
| "test_convert_char_rtp_float", |
| "test_convert_char_rtn_float", |
| "test_convert_char_rtz_float", |
| "test_convert_char_sat_float", |
| "test_convert_char_sat_rte_float", |
| "test_convert_char_sat_rtp_float", |
| "test_convert_char_sat_rtn_float", |
| "test_convert_char_sat_rtz_float", |
| "test_implicit_char_ulong", |
| "test_convert_char_ulong", |
| "test_convert_char_rte_ulong", |
| "test_convert_char_rtp_ulong", |
| "test_convert_char_rtn_ulong", |
| "test_convert_char_rtz_ulong", |
| "test_convert_char_sat_ulong", |
| "test_convert_char_sat_rte_ulong", |
| "test_convert_char_sat_rtp_ulong", |
| "test_convert_char_sat_rtn_ulong", |
| "test_convert_char_sat_rtz_ulong", |
| "test_implicit_char_long", |
| "test_convert_char_long", |
| "test_convert_char_rte_long", |
| "test_convert_char_rtp_long", |
| "test_convert_char_rtn_long", |
| "test_convert_char_rtz_long", |
| "test_convert_char_sat_long", |
| "test_convert_char_sat_rte_long", |
| "test_convert_char_sat_rtp_long", |
| "test_convert_char_sat_rtn_long", |
| "test_convert_char_sat_rtz_long", |
| "test_implicit_ushort_uchar", |
| "test_convert_ushort_uchar", |
| "test_convert_ushort_rte_uchar", |
| "test_convert_ushort_rtp_uchar", |
| "test_convert_ushort_rtn_uchar", |
| "test_convert_ushort_rtz_uchar", |
| "test_convert_ushort_sat_uchar", |
| "test_convert_ushort_sat_rte_uchar", |
| "test_convert_ushort_sat_rtp_uchar", |
| "test_convert_ushort_sat_rtn_uchar", |
| "test_convert_ushort_sat_rtz_uchar", |
| "test_implicit_ushort_char", |
| "test_convert_ushort_char", |
| "test_convert_ushort_rte_char", |
| "test_convert_ushort_rtp_char", |
| "test_convert_ushort_rtn_char", |
| "test_convert_ushort_rtz_char", |
| "test_convert_ushort_sat_char", |
| "test_convert_ushort_sat_rte_char", |
| "test_convert_ushort_sat_rtp_char", |
| "test_convert_ushort_sat_rtn_char", |
| "test_convert_ushort_sat_rtz_char", |
| "test_implicit_ushort_ushort", |
| "test_convert_ushort_ushort", |
| "test_convert_ushort_rte_ushort", |
| "test_convert_ushort_rtp_ushort", |
| "test_convert_ushort_rtn_ushort", |
| "test_convert_ushort_rtz_ushort", |
| "test_convert_ushort_sat_ushort", |
| "test_convert_ushort_sat_rte_ushort", |
| "test_convert_ushort_sat_rtp_ushort", |
| "test_convert_ushort_sat_rtn_ushort", |
| "test_convert_ushort_sat_rtz_ushort", |
| "test_implicit_ushort_short", |
| "test_convert_ushort_short", |
| "test_convert_ushort_rte_short", |
| "test_convert_ushort_rtp_short", |
| "test_convert_ushort_rtn_short", |
| "test_convert_ushort_rtz_short", |
| "test_convert_ushort_sat_short", |
| "test_convert_ushort_sat_rte_short", |
| "test_convert_ushort_sat_rtp_short", |
| "test_convert_ushort_sat_rtn_short", |
| "test_convert_ushort_sat_rtz_short", |
| "test_implicit_ushort_uint", |
| "test_convert_ushort_uint", |
| "test_convert_ushort_rte_uint", |
| "test_convert_ushort_rtp_uint", |
| "test_convert_ushort_rtn_uint", |
| "test_convert_ushort_rtz_uint", |
| "test_convert_ushort_sat_uint", |
| "test_convert_ushort_sat_rte_uint", |
| "test_convert_ushort_sat_rtp_uint", |
| "test_convert_ushort_sat_rtn_uint", |
| "test_convert_ushort_sat_rtz_uint", |
| "test_implicit_ushort_int", |
| "test_convert_ushort_int", |
| "test_convert_ushort_rte_int", |
| "test_convert_ushort_rtp_int", |
| "test_convert_ushort_rtn_int", |
| "test_convert_ushort_rtz_int", |
| "test_convert_ushort_sat_int", |
| "test_convert_ushort_sat_rte_int", |
| "test_convert_ushort_sat_rtp_int", |
| "test_convert_ushort_sat_rtn_int", |
| "test_convert_ushort_sat_rtz_int", |
| "test_implicit_ushort_float", |
| "test_convert_ushort_float", |
| "test_convert_ushort_rte_float", |
| "test_convert_ushort_rtp_float", |
| "test_convert_ushort_rtn_float", |
| "test_convert_ushort_rtz_float", |
| "test_convert_ushort_sat_float", |
| "test_convert_ushort_sat_rte_float", |
| "test_convert_ushort_sat_rtp_float", |
| "test_convert_ushort_sat_rtn_float", |
| "test_convert_ushort_sat_rtz_float", |
| "test_implicit_ushort_ulong", |
| "test_convert_ushort_ulong", |
| "test_convert_ushort_rte_ulong", |
| "test_convert_ushort_rtp_ulong", |
| "test_convert_ushort_rtn_ulong", |
| "test_convert_ushort_rtz_ulong", |
| "test_convert_ushort_sat_ulong", |
| "test_convert_ushort_sat_rte_ulong", |
| "test_convert_ushort_sat_rtp_ulong", |
| "test_convert_ushort_sat_rtn_ulong", |
| "test_convert_ushort_sat_rtz_ulong", |
| "test_implicit_ushort_long", |
| "test_convert_ushort_long", |
| "test_convert_ushort_rte_long", |
| "test_convert_ushort_rtp_long", |
| "test_convert_ushort_rtn_long", |
| "test_convert_ushort_rtz_long", |
| "test_convert_ushort_sat_long", |
| "test_convert_ushort_sat_rte_long", |
| "test_convert_ushort_sat_rtp_long", |
| "test_convert_ushort_sat_rtn_long", |
| "test_convert_ushort_sat_rtz_long", |
| "test_implicit_short_uchar", |
| "test_convert_short_uchar", |
| "test_convert_short_rte_uchar", |
| "test_convert_short_rtp_uchar", |
| "test_convert_short_rtn_uchar", |
| "test_convert_short_rtz_uchar", |
| "test_convert_short_sat_uchar", |
| "test_convert_short_sat_rte_uchar", |
| "test_convert_short_sat_rtp_uchar", |
| "test_convert_short_sat_rtn_uchar", |
| "test_convert_short_sat_rtz_uchar", |
| "test_implicit_short_char", |
| "test_convert_short_char", |
| "test_convert_short_rte_char", |
| "test_convert_short_rtp_char", |
| "test_convert_short_rtn_char", |
| "test_convert_short_rtz_char", |
| "test_convert_short_sat_char", |
| "test_convert_short_sat_rte_char", |
| "test_convert_short_sat_rtp_char", |
| "test_convert_short_sat_rtn_char", |
| "test_convert_short_sat_rtz_char", |
| "test_implicit_short_ushort", |
| "test_convert_short_ushort", |
| "test_convert_short_rte_ushort", |
| "test_convert_short_rtp_ushort", |
| "test_convert_short_rtn_ushort", |
| "test_convert_short_rtz_ushort", |
| "test_convert_short_sat_ushort", |
| "test_convert_short_sat_rte_ushort", |
| "test_convert_short_sat_rtp_ushort", |
| "test_convert_short_sat_rtn_ushort", |
| "test_convert_short_sat_rtz_ushort", |
| "test_implicit_short_short", |
| "test_convert_short_short", |
| "test_convert_short_rte_short", |
| "test_convert_short_rtp_short", |
| "test_convert_short_rtn_short", |
| "test_convert_short_rtz_short", |
| "test_convert_short_sat_short", |
| "test_convert_short_sat_rte_short", |
| "test_convert_short_sat_rtp_short", |
| "test_convert_short_sat_rtn_short", |
| "test_convert_short_sat_rtz_short", |
| "test_implicit_short_uint", |
| "test_convert_short_uint", |
| "test_convert_short_rte_uint", |
| "test_convert_short_rtp_uint", |
| "test_convert_short_rtn_uint", |
| "test_convert_short_rtz_uint", |
| "test_convert_short_sat_uint", |
| "test_convert_short_sat_rte_uint", |
| "test_convert_short_sat_rtp_uint", |
| "test_convert_short_sat_rtn_uint", |
| "test_convert_short_sat_rtz_uint", |
| "test_implicit_short_int", |
| "test_convert_short_int", |
| "test_convert_short_rte_int", |
| "test_convert_short_rtp_int", |
| "test_convert_short_rtn_int", |
| "test_convert_short_rtz_int", |
| "test_convert_short_sat_int", |
| "test_convert_short_sat_rte_int", |
| "test_convert_short_sat_rtp_int", |
| "test_convert_short_sat_rtn_int", |
| "test_convert_short_sat_rtz_int", |
| "test_implicit_short_float", |
| "test_convert_short_float", |
| "test_convert_short_rte_float", |
| "test_convert_short_rtp_float", |
| "test_convert_short_rtn_float", |
| "test_convert_short_rtz_float", |
| "test_convert_short_sat_float", |
| "test_convert_short_sat_rte_float", |
| "test_convert_short_sat_rtp_float", |
| "test_convert_short_sat_rtn_float", |
| "test_convert_short_sat_rtz_float", |
| "test_implicit_short_ulong", |
| "test_convert_short_ulong", |
| "test_convert_short_rte_ulong", |
| "test_convert_short_rtp_ulong", |
| "test_convert_short_rtn_ulong", |
| "test_convert_short_rtz_ulong", |
| "test_convert_short_sat_ulong", |
| "test_convert_short_sat_rte_ulong", |
| "test_convert_short_sat_rtp_ulong", |
| "test_convert_short_sat_rtn_ulong", |
| "test_convert_short_sat_rtz_ulong", |
| "test_implicit_short_long", |
| "test_convert_short_long", |
| "test_convert_short_rte_long", |
| "test_convert_short_rtp_long", |
| "test_convert_short_rtn_long", |
| "test_convert_short_rtz_long", |
| "test_convert_short_sat_long", |
| "test_convert_short_sat_rte_long", |
| "test_convert_short_sat_rtp_long", |
| "test_convert_short_sat_rtn_long", |
| "test_convert_short_sat_rtz_long", |
| "test_implicit_uint_uchar", |
| "test_convert_uint_uchar", |
| "test_convert_uint_rte_uchar", |
| "test_convert_uint_rtp_uchar", |
| "test_convert_uint_rtn_uchar", |
| "test_convert_uint_rtz_uchar", |
| "test_convert_uint_sat_uchar", |
| "test_convert_uint_sat_rte_uchar", |
| "test_convert_uint_sat_rtp_uchar", |
| "test_convert_uint_sat_rtn_uchar", |
| "test_convert_uint_sat_rtz_uchar", |
| "test_implicit_uint_char", |
| "test_convert_uint_char", |
| "test_convert_uint_rte_char", |
| "test_convert_uint_rtp_char", |
| "test_convert_uint_rtn_char", |
| "test_convert_uint_rtz_char", |
| "test_convert_uint_sat_char", |
| "test_convert_uint_sat_rte_char", |
| "test_convert_uint_sat_rtp_char", |
| "test_convert_uint_sat_rtn_char", |
| "test_convert_uint_sat_rtz_char", |
| "test_implicit_uint_ushort", |
| "test_convert_uint_ushort", |
| "test_convert_uint_rte_ushort", |
| "test_convert_uint_rtp_ushort", |
| "test_convert_uint_rtn_ushort", |
| "test_convert_uint_rtz_ushort", |
| "test_convert_uint_sat_ushort", |
| "test_convert_uint_sat_rte_ushort", |
| "test_convert_uint_sat_rtp_ushort", |
| "test_convert_uint_sat_rtn_ushort", |
| "test_convert_uint_sat_rtz_ushort", |
| "test_implicit_uint_short", |
| "test_convert_uint_short", |
| "test_convert_uint_rte_short", |
| "test_convert_uint_rtp_short", |
| "test_convert_uint_rtn_short", |
| "test_convert_uint_rtz_short", |
| "test_convert_uint_sat_short", |
| "test_convert_uint_sat_rte_short", |
| "test_convert_uint_sat_rtp_short", |
| "test_convert_uint_sat_rtn_short", |
| "test_convert_uint_sat_rtz_short", |
| "test_implicit_uint_uint", |
| "test_convert_uint_uint", |
| "test_convert_uint_rte_uint", |
| "test_convert_uint_rtp_uint", |
| "test_convert_uint_rtn_uint", |
| "test_convert_uint_rtz_uint", |
| "test_convert_uint_sat_uint", |
| "test_convert_uint_sat_rte_uint", |
| "test_convert_uint_sat_rtp_uint", |
| "test_convert_uint_sat_rtn_uint", |
| "test_convert_uint_sat_rtz_uint", |
| "test_implicit_uint_int", |
| "test_convert_uint_int", |
| "test_convert_uint_rte_int", |
| "test_convert_uint_rtp_int", |
| "test_convert_uint_rtn_int", |
| "test_convert_uint_rtz_int", |
| "test_convert_uint_sat_int", |
| "test_convert_uint_sat_rte_int", |
| "test_convert_uint_sat_rtp_int", |
| "test_convert_uint_sat_rtn_int", |
| "test_convert_uint_sat_rtz_int", |
| "test_implicit_uint_float", |
| "test_convert_uint_float", |
| "test_convert_uint_rte_float", |
| "test_convert_uint_rtp_float", |
| "test_convert_uint_rtn_float", |
| "test_convert_uint_rtz_float", |
| "test_convert_uint_sat_float", |
| "test_convert_uint_sat_rte_float", |
| "test_convert_uint_sat_rtp_float", |
| "test_convert_uint_sat_rtn_float", |
| "test_convert_uint_sat_rtz_float", |
| "test_implicit_uint_ulong", |
| "test_convert_uint_ulong", |
| "test_convert_uint_rte_ulong", |
| "test_convert_uint_rtp_ulong", |
| "test_convert_uint_rtn_ulong", |
| "test_convert_uint_rtz_ulong", |
| "test_convert_uint_sat_ulong", |
| "test_convert_uint_sat_rte_ulong", |
| "test_convert_uint_sat_rtp_ulong", |
| "test_convert_uint_sat_rtn_ulong", |
| "test_convert_uint_sat_rtz_ulong", |
| "test_implicit_uint_long", |
| "test_convert_uint_long", |
| "test_convert_uint_rte_long", |
| "test_convert_uint_rtp_long", |
| "test_convert_uint_rtn_long", |
| "test_convert_uint_rtz_long", |
| "test_convert_uint_sat_long", |
| "test_convert_uint_sat_rte_long", |
| "test_convert_uint_sat_rtp_long", |
| "test_convert_uint_sat_rtn_long", |
| "test_convert_uint_sat_rtz_long", |
| "test_implicit_int_uchar", |
| "test_convert_int_uchar", |
| "test_convert_int_rte_uchar", |
| "test_convert_int_rtp_uchar", |
| "test_convert_int_rtn_uchar", |
| "test_convert_int_rtz_uchar", |
| "test_convert_int_sat_uchar", |
| "test_convert_int_sat_rte_uchar", |
| "test_convert_int_sat_rtp_uchar", |
| "test_convert_int_sat_rtn_uchar", |
| "test_convert_int_sat_rtz_uchar", |
| "test_implicit_int_char", |
| "test_convert_int_char", |
| "test_convert_int_rte_char", |
| "test_convert_int_rtp_char", |
| "test_convert_int_rtn_char", |
| "test_convert_int_rtz_char", |
| "test_convert_int_sat_char", |
| "test_convert_int_sat_rte_char", |
| "test_convert_int_sat_rtp_char", |
| "test_convert_int_sat_rtn_char", |
| "test_convert_int_sat_rtz_char", |
| "test_implicit_int_ushort", |
| "test_convert_int_ushort", |
| "test_convert_int_rte_ushort", |
| "test_convert_int_rtp_ushort", |
| "test_convert_int_rtn_ushort", |
| "test_convert_int_rtz_ushort", |
| "test_convert_int_sat_ushort", |
| "test_convert_int_sat_rte_ushort", |
| "test_convert_int_sat_rtp_ushort", |
| "test_convert_int_sat_rtn_ushort", |
| "test_convert_int_sat_rtz_ushort", |
| "test_implicit_int_short", |
| "test_convert_int_short", |
| "test_convert_int_rte_short", |
| "test_convert_int_rtp_short", |
| "test_convert_int_rtn_short", |
| "test_convert_int_rtz_short", |
| "test_convert_int_sat_short", |
| "test_convert_int_sat_rte_short", |
| "test_convert_int_sat_rtp_short", |
| "test_convert_int_sat_rtn_short", |
| "test_convert_int_sat_rtz_short", |
| "test_implicit_int_uint", |
| "test_convert_int_uint", |
| "test_convert_int_rte_uint", |
| "test_convert_int_rtp_uint", |
| "test_convert_int_rtn_uint", |
| "test_convert_int_rtz_uint", |
| "test_convert_int_sat_uint", |
| "test_convert_int_sat_rte_uint", |
| "test_convert_int_sat_rtp_uint", |
| "test_convert_int_sat_rtn_uint", |
| "test_convert_int_sat_rtz_uint", |
| "test_implicit_int_int", |
| "test_convert_int_int", |
| "test_convert_int_rte_int", |
| "test_convert_int_rtp_int", |
| "test_convert_int_rtn_int", |
| "test_convert_int_rtz_int", |
| "test_convert_int_sat_int", |
| "test_convert_int_sat_rte_int", |
| "test_convert_int_sat_rtp_int", |
| "test_convert_int_sat_rtn_int", |
| "test_convert_int_sat_rtz_int", |
| "test_implicit_int_float", |
| "test_convert_int_float", |
| "test_convert_int_rte_float", |
| "test_convert_int_rtp_float", |
| "test_convert_int_rtn_float", |
| "test_convert_int_rtz_float", |
| "test_convert_int_sat_float", |
| "test_convert_int_sat_rte_float", |
| "test_convert_int_sat_rtp_float", |
| "test_convert_int_sat_rtn_float", |
| "test_convert_int_sat_rtz_float", |
| "test_implicit_int_ulong", |
| "test_convert_int_ulong", |
| "test_convert_int_rte_ulong", |
| "test_convert_int_rtp_ulong", |
| "test_convert_int_rtn_ulong", |
| "test_convert_int_rtz_ulong", |
| "test_convert_int_sat_ulong", |
| "test_convert_int_sat_rte_ulong", |
| "test_convert_int_sat_rtp_ulong", |
| "test_convert_int_sat_rtn_ulong", |
| "test_convert_int_sat_rtz_ulong", |
| "test_implicit_int_long", |
| "test_convert_int_long", |
| "test_convert_int_rte_long", |
| "test_convert_int_rtp_long", |
| "test_convert_int_rtn_long", |
| "test_convert_int_rtz_long", |
| "test_convert_int_sat_long", |
| "test_convert_int_sat_rte_long", |
| "test_convert_int_sat_rtp_long", |
| "test_convert_int_sat_rtn_long", |
| "test_convert_int_sat_rtz_long", |
| "test_implicit_float_uchar", |
| "test_convert_float_uchar", |
| "test_convert_float_rte_uchar", |
| "test_convert_float_rtp_uchar", |
| "test_convert_float_rtn_uchar", |
| "test_convert_float_rtz_uchar", |
| "test_implicit_float_char", |
| "test_convert_float_char", |
| "test_convert_float_rte_char", |
| "test_convert_float_rtp_char", |
| "test_convert_float_rtn_char", |
| "test_convert_float_rtz_char", |
| "test_implicit_float_ushort", |
| "test_convert_float_ushort", |
| "test_convert_float_rte_ushort", |
| "test_convert_float_rtp_ushort", |
| "test_convert_float_rtn_ushort", |
| "test_convert_float_rtz_ushort", |
| "test_implicit_float_short", |
| "test_convert_float_short", |
| "test_convert_float_rte_short", |
| "test_convert_float_rtp_short", |
| "test_convert_float_rtn_short", |
| "test_convert_float_rtz_short", |
| "test_implicit_float_uint", |
| "test_convert_float_uint", |
| "test_convert_float_rte_uint", |
| "test_convert_float_rtp_uint", |
| "test_convert_float_rtn_uint", |
| "test_convert_float_rtz_uint", |
| "test_implicit_float_int", |
| "test_convert_float_int", |
| "test_convert_float_rte_int", |
| "test_convert_float_rtp_int", |
| "test_convert_float_rtn_int", |
| "test_convert_float_rtz_int", |
| "test_implicit_float_float", |
| "test_convert_float_float", |
| "test_convert_float_rte_float", |
| "test_convert_float_rtp_float", |
| "test_convert_float_rtn_float", |
| "test_convert_float_rtz_float", |
| "test_implicit_float_ulong", |
| "test_convert_float_ulong", |
| "test_convert_float_rte_ulong", |
| "test_convert_float_rtp_ulong", |
| "test_convert_float_rtn_ulong", |
| "test_convert_float_rtz_ulong", |
| "test_implicit_float_long", |
| "test_convert_float_long", |
| "test_convert_float_rte_long", |
| "test_convert_float_rtp_long", |
| "test_convert_float_rtn_long", |
| "test_convert_float_rtz_long", |
| "test_implicit_ulong_uchar", |
| "test_convert_ulong_uchar", |
| "test_convert_ulong_rte_uchar", |
| "test_convert_ulong_rtp_uchar", |
| "test_convert_ulong_rtn_uchar", |
| "test_convert_ulong_rtz_uchar", |
| "test_convert_ulong_sat_uchar", |
| "test_convert_ulong_sat_rte_uchar", |
| "test_convert_ulong_sat_rtp_uchar", |
| "test_convert_ulong_sat_rtn_uchar", |
| "test_convert_ulong_sat_rtz_uchar", |
| "test_implicit_ulong_char", |
| "test_convert_ulong_char", |
| "test_convert_ulong_rte_char", |
| "test_convert_ulong_rtp_char", |
| "test_convert_ulong_rtn_char", |
| "test_convert_ulong_rtz_char", |
| "test_convert_ulong_sat_char", |
| "test_convert_ulong_sat_rte_char", |
| "test_convert_ulong_sat_rtp_char", |
| "test_convert_ulong_sat_rtn_char", |
| "test_convert_ulong_sat_rtz_char", |
| "test_implicit_ulong_ushort", |
| "test_convert_ulong_ushort", |
| "test_convert_ulong_rte_ushort", |
| "test_convert_ulong_rtp_ushort", |
| "test_convert_ulong_rtn_ushort", |
| "test_convert_ulong_rtz_ushort", |
| "test_convert_ulong_sat_ushort", |
| "test_convert_ulong_sat_rte_ushort", |
| "test_convert_ulong_sat_rtp_ushort", |
| "test_convert_ulong_sat_rtn_ushort", |
| "test_convert_ulong_sat_rtz_ushort", |
| "test_implicit_ulong_short", |
| "test_convert_ulong_short", |
| "test_convert_ulong_rte_short", |
| "test_convert_ulong_rtp_short", |
| "test_convert_ulong_rtn_short", |
| "test_convert_ulong_rtz_short", |
| "test_convert_ulong_sat_short", |
| "test_convert_ulong_sat_rte_short", |
| "test_convert_ulong_sat_rtp_short", |
| "test_convert_ulong_sat_rtn_short", |
| "test_convert_ulong_sat_rtz_short", |
| "test_implicit_ulong_uint", |
| "test_convert_ulong_uint", |
| "test_convert_ulong_rte_uint", |
| "test_convert_ulong_rtp_uint", |
| "test_convert_ulong_rtn_uint", |
| "test_convert_ulong_rtz_uint", |
| "test_convert_ulong_sat_uint", |
| "test_convert_ulong_sat_rte_uint", |
| "test_convert_ulong_sat_rtp_uint", |
| "test_convert_ulong_sat_rtn_uint", |
| "test_convert_ulong_sat_rtz_uint", |
| "test_implicit_ulong_int", |
| "test_convert_ulong_int", |
| "test_convert_ulong_rte_int", |
| "test_convert_ulong_rtp_int", |
| "test_convert_ulong_rtn_int", |
| "test_convert_ulong_rtz_int", |
| "test_convert_ulong_sat_int", |
| "test_convert_ulong_sat_rte_int", |
| "test_convert_ulong_sat_rtp_int", |
| "test_convert_ulong_sat_rtn_int", |
| "test_convert_ulong_sat_rtz_int", |
| "test_implicit_ulong_float", |
| "test_convert_ulong_float", |
| "test_convert_ulong_rte_float", |
| "test_convert_ulong_rtp_float", |
| "test_convert_ulong_rtn_float", |
| "test_convert_ulong_rtz_float", |
| "test_convert_ulong_sat_float", |
| "test_convert_ulong_sat_rte_float", |
| "test_convert_ulong_sat_rtp_float", |
| "test_convert_ulong_sat_rtn_float", |
| "test_convert_ulong_sat_rtz_float", |
| "test_implicit_ulong_ulong", |
| "test_convert_ulong_ulong", |
| "test_convert_ulong_rte_ulong", |
| "test_convert_ulong_rtp_ulong", |
| "test_convert_ulong_rtn_ulong", |
| "test_convert_ulong_rtz_ulong", |
| "test_convert_ulong_sat_ulong", |
| "test_convert_ulong_sat_rte_ulong", |
| "test_convert_ulong_sat_rtp_ulong", |
| "test_convert_ulong_sat_rtn_ulong", |
| "test_convert_ulong_sat_rtz_ulong", |
| "test_implicit_ulong_long", |
| "test_convert_ulong_long", |
| "test_convert_ulong_rte_long", |
| "test_convert_ulong_rtp_long", |
| "test_convert_ulong_rtn_long", |
| "test_convert_ulong_rtz_long", |
| "test_convert_ulong_sat_long", |
| "test_convert_ulong_sat_rte_long", |
| "test_convert_ulong_sat_rtp_long", |
| "test_convert_ulong_sat_rtn_long", |
| "test_convert_ulong_sat_rtz_long", |
| "test_implicit_long_uchar", |
| "test_convert_long_uchar", |
| "test_convert_long_rte_uchar", |
| "test_convert_long_rtp_uchar", |
| "test_convert_long_rtn_uchar", |
| "test_convert_long_rtz_uchar", |
| "test_convert_long_sat_uchar", |
| "test_convert_long_sat_rte_uchar", |
| "test_convert_long_sat_rtp_uchar", |
| "test_convert_long_sat_rtn_uchar", |
| "test_convert_long_sat_rtz_uchar", |
| "test_implicit_long_char", |
| "test_convert_long_char", |
| "test_convert_long_rte_char", |
| "test_convert_long_rtp_char", |
| "test_convert_long_rtn_char", |
| "test_convert_long_rtz_char", |
| "test_convert_long_sat_char", |
| "test_convert_long_sat_rte_char", |
| "test_convert_long_sat_rtp_char", |
| "test_convert_long_sat_rtn_char", |
| "test_convert_long_sat_rtz_char", |
| "test_implicit_long_ushort", |
| "test_convert_long_ushort", |
| "test_convert_long_rte_ushort", |
| "test_convert_long_rtp_ushort", |
| "test_convert_long_rtn_ushort", |
| "test_convert_long_rtz_ushort", |
| "test_convert_long_sat_ushort", |
| "test_convert_long_sat_rte_ushort", |
| "test_convert_long_sat_rtp_ushort", |
| "test_convert_long_sat_rtn_ushort", |
| "test_convert_long_sat_rtz_ushort", |
| "test_implicit_long_short", |
| "test_convert_long_short", |
| "test_convert_long_rte_short", |
| "test_convert_long_rtp_short", |
| "test_convert_long_rtn_short", |
| "test_convert_long_rtz_short", |
| "test_convert_long_sat_short", |
| "test_convert_long_sat_rte_short", |
| "test_convert_long_sat_rtp_short", |
| "test_convert_long_sat_rtn_short", |
| "test_convert_long_sat_rtz_short", |
| "test_implicit_long_uint", |
| "test_convert_long_uint", |
| "test_convert_long_rte_uint", |
| "test_convert_long_rtp_uint", |
| "test_convert_long_rtn_uint", |
| "test_convert_long_rtz_uint", |
| "test_convert_long_sat_uint", |
| "test_convert_long_sat_rte_uint", |
| "test_convert_long_sat_rtp_uint", |
| "test_convert_long_sat_rtn_uint", |
| "test_convert_long_sat_rtz_uint", |
| "test_implicit_long_int", |
| "test_convert_long_int", |
| "test_convert_long_rte_int", |
| "test_convert_long_rtp_int", |
| "test_convert_long_rtn_int", |
| "test_convert_long_rtz_int", |
| "test_convert_long_sat_int", |
| "test_convert_long_sat_rte_int", |
| "test_convert_long_sat_rtp_int", |
| "test_convert_long_sat_rtn_int", |
| "test_convert_long_sat_rtz_int", |
| "test_implicit_long_float", |
| "test_convert_long_float", |
| "test_convert_long_rte_float", |
| "test_convert_long_rtp_float", |
| "test_convert_long_rtn_float", |
| "test_convert_long_rtz_float", |
| "test_convert_long_sat_float", |
| "test_convert_long_sat_rte_float", |
| "test_convert_long_sat_rtp_float", |
| "test_convert_long_sat_rtn_float", |
| "test_convert_long_sat_rtz_float", |
| "test_implicit_long_ulong", |
| "test_convert_long_ulong", |
| "test_convert_long_rte_ulong", |
| "test_convert_long_rtp_ulong", |
| "test_convert_long_rtn_ulong", |
| "test_convert_long_rtz_ulong", |
| "test_convert_long_sat_ulong", |
| "test_convert_long_sat_rte_ulong", |
| "test_convert_long_sat_rtp_ulong", |
| "test_convert_long_sat_rtn_ulong", |
| "test_convert_long_sat_rtz_ulong", |
| "test_implicit_long_long", |
| "test_convert_long_long", |
| "test_convert_long_rte_long", |
| "test_convert_long_rtp_long", |
| "test_convert_long_rtn_long", |
| "test_convert_long_rtz_long", |
| "test_convert_long_sat_long", |
| "test_convert_long_sat_rte_long", |
| "test_convert_long_sat_rtp_long", |
| "test_convert_long_sat_rtn_long", |
| "test_convert_long_sat_rtz_long", |
| "long_convert2_type_roundingmode_type_f", |
| "long_convert3_type_roundingmode_type_f", |
| "long_convert4_type_roundingmode_type_f", |
| "long_convert8_type_roundingmode_type_f", |
| "long_convert16_type_roundingmode_type_f", |
| }; |
| |
| log_info("test_conversions\n"); |
| return test_suite(device, size_t_width, folder, test_name, sizeof(test_name) / sizeof(const char *), ""); |
| } |
| |
| |
| bool test_conversions_double (cl_device_id device, cl_uint size_t_width, const char *folder) |
| { |
| static const char* test_name[] = { |
| "convert2_type_roundingmode_type_d", |
| "convert3_type_roundingmode_type_d", |
| "convert4_type_roundingmode_type_d", |
| "convert8_type_roundingmode_type_d", |
| "convert16_type_roundingmode_type_d", |
| "test_implicit_uchar_double", |
| "test_convert_uchar_double", |
| "test_convert_uchar_rte_double", |
| "test_convert_uchar_rtp_double", |
| "test_convert_uchar_rtn_double", |
| "test_convert_uchar_rtz_double", |
| "test_convert_uchar_sat_double", |
| "test_convert_uchar_sat_rte_double", |
| "test_convert_uchar_sat_rtp_double", |
| "test_convert_uchar_sat_rtn_double", |
| "test_convert_uchar_sat_rtz_double", |
| "test_implicit_char_double", |
| "test_convert_char_double", |
| "test_convert_char_rte_double", |
| "test_convert_char_rtp_double", |
| "test_convert_char_rtn_double", |
| "test_convert_char_rtz_double", |
| "test_convert_char_sat_double", |
| "test_convert_char_sat_rte_double", |
| "test_convert_char_sat_rtp_double", |
| "test_convert_char_sat_rtn_double", |
| "test_convert_char_sat_rtz_double", |
| "test_implicit_ushort_double", |
| "test_convert_ushort_double", |
| "test_convert_ushort_rte_double", |
| "test_convert_ushort_rtp_double", |
| "test_convert_ushort_rtn_double", |
| "test_convert_ushort_rtz_double", |
| "test_convert_ushort_sat_double", |
| "test_convert_ushort_sat_rte_double", |
| "test_convert_ushort_sat_rtp_double", |
| "test_convert_ushort_sat_rtn_double", |
| "test_convert_ushort_sat_rtz_double", |
| "test_implicit_short_double", |
| "test_convert_short_double", |
| "test_convert_short_rte_double", |
| "test_convert_short_rtp_double", |
| "test_convert_short_rtn_double", |
| "test_convert_short_rtz_double", |
| "test_convert_short_sat_double", |
| "test_convert_short_sat_rte_double", |
| "test_convert_short_sat_rtp_double", |
| "test_convert_short_sat_rtn_double", |
| "test_convert_short_sat_rtz_double", |
| "test_implicit_uint_double", |
| "test_convert_uint_double", |
| "test_convert_uint_rte_double", |
| "test_convert_uint_rtp_double", |
| "test_convert_uint_rtn_double", |
| "test_convert_uint_rtz_double", |
| "test_convert_uint_sat_double", |
| "test_convert_uint_sat_rte_double", |
| "test_convert_uint_sat_rtp_double", |
| "test_convert_uint_sat_rtn_double", |
| "test_convert_uint_sat_rtz_double", |
| "test_implicit_int_double", |
| "test_convert_int_double", |
| "test_convert_int_rte_double", |
| "test_convert_int_rtp_double", |
| "test_convert_int_rtn_double", |
| "test_convert_int_rtz_double", |
| "test_convert_int_sat_double", |
| "test_convert_int_sat_rte_double", |
| "test_convert_int_sat_rtp_double", |
| "test_convert_int_sat_rtn_double", |
| "test_convert_int_sat_rtz_double", |
| "test_implicit_float_double", |
| "test_convert_float_double", |
| "test_convert_float_rte_double", |
| "test_convert_float_rtp_double", |
| "test_convert_float_rtn_double", |
| "test_convert_float_rtz_double", |
| "test_implicit_double_uchar", |
| "test_convert_double_uchar", |
| "test_convert_double_rte_uchar", |
| "test_convert_double_rtp_uchar", |
| "test_convert_double_rtn_uchar", |
| "test_convert_double_rtz_uchar", |
| "test_implicit_double_char", |
| "test_convert_double_char", |
| "test_convert_double_rte_char", |
| "test_convert_double_rtp_char", |
| "test_convert_double_rtn_char", |
| "test_convert_double_rtz_char", |
| "test_implicit_double_ushort", |
| "test_convert_double_ushort", |
| "test_convert_double_rte_ushort", |
| "test_convert_double_rtp_ushort", |
| "test_convert_double_rtn_ushort", |
| "test_convert_double_rtz_ushort", |
| "test_implicit_double_short", |
| "test_convert_double_short", |
| "test_convert_double_rte_short", |
| "test_convert_double_rtp_short", |
| "test_convert_double_rtn_short", |
| "test_convert_double_rtz_short", |
| "test_implicit_double_uint", |
| "test_convert_double_uint", |
| "test_convert_double_rte_uint", |
| "test_convert_double_rtp_uint", |
| "test_convert_double_rtn_uint", |
| "test_convert_double_rtz_uint", |
| "test_implicit_double_int", |
| "test_convert_double_int", |
| "test_convert_double_rte_int", |
| "test_convert_double_rtp_int", |
| "test_convert_double_rtn_int", |
| "test_convert_double_rtz_int", |
| "test_implicit_double_float", |
| "test_convert_double_float", |
| "test_convert_double_rte_float", |
| "test_convert_double_rtp_float", |
| "test_convert_double_rtn_float", |
| "test_convert_double_rtz_float", |
| "test_implicit_double_double", |
| "test_convert_double_double", |
| "test_convert_double_rte_double", |
| "test_convert_double_rtp_double", |
| "test_convert_double_rtn_double", |
| "test_convert_double_rtz_double", |
| "test_implicit_double_ulong", |
| "test_convert_double_ulong", |
| "test_convert_double_rte_ulong", |
| "test_convert_double_rtp_ulong", |
| "test_convert_double_rtn_ulong", |
| "test_convert_double_rtz_ulong", |
| "test_implicit_double_long", |
| "test_convert_double_long", |
| "test_convert_double_rte_long", |
| "test_convert_double_rtp_long", |
| "test_convert_double_rtn_long", |
| "test_convert_double_rtz_long", |
| "test_implicit_ulong_double", |
| "test_convert_ulong_double", |
| "test_convert_ulong_rte_double", |
| "test_convert_ulong_rtp_double", |
| "test_convert_ulong_rtn_double", |
| "test_convert_ulong_rtz_double", |
| "test_convert_ulong_sat_double", |
| "test_convert_ulong_sat_rte_double", |
| "test_convert_ulong_sat_rtp_double", |
| "test_convert_ulong_sat_rtn_double", |
| "test_convert_ulong_sat_rtz_double", |
| "test_implicit_long_double", |
| "test_convert_long_double", |
| "test_convert_long_rte_double", |
| "test_convert_long_rtp_double", |
| "test_convert_long_rtn_double", |
| "test_convert_long_rtz_double", |
| "test_convert_long_sat_double", |
| "test_convert_long_sat_rte_double", |
| "test_convert_long_sat_rtp_double", |
| "test_convert_long_sat_rtn_double", |
| "test_convert_long_sat_rtz_double", |
| }; |
| |
| log_info("test_conversions_double\n"); |
| return test_suite(device, size_t_width, folder, test_name, sizeof(test_name) / sizeof(const char *), "cl_khr_fp64"); |
| } |
| |
| |
| bool test_geometrics (cl_device_id device, cl_uint size_t_width, const char *folder) |
| { |
| static const char* test_name[] = { |
| "sample_test.geom_cross_float3", |
| "sample_test.geom_cross_float4", |
| "sample_test.geom_dot_float", |
| "sample_test.geom_dot_float2", |
| "sample_test.geom_dot_float3", |
| "sample_test.geom_dot_float4", |
| "sample_test.geom_distance_float", |
| "sample_test.geom_distance_float2", |
| "sample_test.geom_distance_float3", |
| "sample_test.geom_distance_float4", |
| "sample_test.geom_fast_distance_float", |
| "sample_test.geom_fast_distance_float2", |
| "sample_test.geom_fast_distance_float3", |
| "sample_test.geom_fast_distance_float4", |
| "sample_test.geom_length_float", |
| "sample_test.geom_length_float2", |
| "sample_test.geom_length_float3", |
| "sample_test.geom_length_float4", |
| "sample_test.geom_fast_length_float", |
| "sample_test.geom_fast_length_float2", |
| "sample_test.geom_fast_length_float3", |
| "sample_test.geom_fast_length_float4", |
| "sample_test.geom_normalize_float", |
| "sample_test.geom_normalize_float2", |
| "sample_test.geom_normalize_float3", |
| "sample_test.geom_normalize_float4", |
| "sample_test.geom_fast_normalize_float", |
| "sample_test.geom_fast_normalize_float2", |
| "sample_test.geom_fast_normalize_float3", |
| "sample_test.geom_fast_normalize_float4", |
| }; |
| |
| log_info("test_geometrics\n"); |
| return test_suite(device, size_t_width, folder, test_name, sizeof(test_name) / sizeof(const char *), ""); |
| } |
| |
| |
| bool test_geometrics_double (cl_device_id device, cl_uint size_t_width, const char *folder) |
| { |
| static const char* test_name[] = { |
| "sample_test.geom_cross_double3", |
| "sample_test.geom_cross_double4", |
| "sample_test.geom_dot_double", |
| "sample_test.geom_dot_double2", |
| "sample_test.geom_dot_double3", |
| "sample_test.geom_dot_double4", |
| "sample_test.geom_distance_double", |
| "sample_test.geom_distance_double2", |
| "sample_test.geom_distance_double3", |
| "sample_test.geom_distance_double4", |
| "sample_test.geom_length_double", |
| "sample_test.geom_length_double2", |
| "sample_test.geom_length_double3", |
| "sample_test.geom_length_double4", |
| "sample_test.geom_normalize_double", |
| "sample_test.geom_normalize_double2", |
| "sample_test.geom_normalize_double3", |
| "sample_test.geom_normalize_double4", |
| }; |
| |
| log_info("test_geometrics_double\n"); |
| return test_suite(device, size_t_width, folder, test_name, sizeof(test_name) / sizeof(const char *), "cl_khr_fp64"); |
| } |
| |
| |
| bool test_half (cl_device_id device, cl_uint size_t_width, const char *folder) |
| { |
| static const char* test_name[] = { |
| "test.vload_half_global", |
| "test.vload_half_private", |
| "test.vload_half_local", |
| "test.vload_half_constant", |
| "test.vload_half2_global", |
| "test.vload_half2_private", |
| "test.vload_half2_local", |
| "test.vload_half2_constant", |
| "test.vload_half4_global", |
| "test.vload_half4_private", |
| "test.vload_half4_local", |
| "test.vload_half4_constant", |
| "test.vload_half8_global", |
| "test.vload_half8_private", |
| "test.vload_half8_local", |
| "test.vload_half8_constant", |
| "test.vload_half16_global", |
| "test.vload_half16_private", |
| "test.vload_half16_local", |
| "test.vload_half16_constant", |
| "test.vload_half3_global", |
| "test.vload_half3_private", |
| "test.vload_half3_local", |
| "test.vload_half3_constant", |
| "test.vloada_half_global", |
| "test.vloada_half_private", |
| "test.vloada_half_local", |
| "test.vloada_half_constant", |
| "test.vloada_half2_global", |
| "test.vloada_half2_private", |
| "test.vloada_half2_local", |
| "test.vloada_half2_constant", |
| "test.vloada_half4_global", |
| "test.vloada_half4_private", |
| "test.vloada_half4_local", |
| "test.vloada_half4_constant", |
| "test.vloada_half8_global", |
| "test.vloada_half8_private", |
| "test.vloada_half8_local", |
| "test.vloada_half8_constant", |
| "test.vloada_half16_global", |
| "test.vloada_half16_private", |
| "test.vloada_half16_local", |
| "test.vloada_half16_constant", |
| "test.vloada_half3_global", |
| "test.vloada_half3_private", |
| "test.vloada_half3_local", |
| "test.vloada_half3_constant", |
| "test.vstore_half_global_float", |
| "test.vstore_half_private_float", |
| "test.vstore_half_local_float", |
| "test.vstore_half_global_float2", |
| "test.vstore_half_private_float2", |
| "test.vstore_half_local_float2", |
| "test.vstore_half_global_float4", |
| "test.vstore_half_private_float4", |
| "test.vstore_half_local_float4", |
| "test.vstore_half_global_float8", |
| "test.vstore_half_private_float8", |
| "test.vstore_half_local_float8", |
| "test.vstore_half_global_float16", |
| "test.vstore_half_private_float16", |
| "test.vstore_half_local_float16", |
| "test.vstore_half_global_float3", |
| "test.vstore_half_private_float3", |
| "test.vstore_half_local_float3", |
| "test.vstorea_half_global_float2", |
| "test.vstorea_half_private_float2", |
| "test.vstorea_half_local_float2", |
| "test.vstorea_half_global_float4", |
| "test.vstorea_half_private_float4", |
| "test.vstorea_half_local_float4", |
| "test.vstorea_half_global_float8", |
| "test.vstorea_half_private_float8", |
| "test.vstorea_half_local_float8", |
| "test.vstorea_half_global_float16", |
| "test.vstorea_half_private_float16", |
| "test.vstorea_half_local_float16", |
| "test.vstorea_half_global_float3", |
| "test.vstorea_half_private_float3", |
| "test.vstorea_half_local_float3", |
| "test.vstore_half_rte_global_float", |
| "test.vstore_half_rte_private_float", |
| "test.vstore_half_rte_local_float", |
| "test.vstore_half_rte_global_float2", |
| "test.vstore_half_rte_private_float2", |
| "test.vstore_half_rte_local_float2", |
| "test.vstore_half_rte_global_float4", |
| "test.vstore_half_rte_private_float4", |
| "test.vstore_half_rte_local_float4", |
| "test.vstore_half_rte_global_float8", |
| "test.vstore_half_rte_private_float8", |
| "test.vstore_half_rte_local_float8", |
| "test.vstore_half_rte_global_float16", |
| "test.vstore_half_rte_private_float16", |
| "test.vstore_half_rte_local_float16", |
| "test.vstore_half_rte_global_float3", |
| "test.vstore_half_rte_private_float3", |
| "test.vstore_half_rte_local_float3", |
| "test.vstorea_half_rte_global_float2", |
| "test.vstorea_half_rte_private_float2", |
| "test.vstorea_half_rte_local_float2", |
| "test.vstorea_half_rte_global_float4", |
| "test.vstorea_half_rte_private_float4", |
| "test.vstorea_half_rte_local_float4", |
| "test.vstorea_half_rte_global_float8", |
| "test.vstorea_half_rte_private_float8", |
| "test.vstorea_half_rte_local_float8", |
| "test.vstorea_half_rte_global_float16", |
| "test.vstorea_half_rte_private_float16", |
| "test.vstorea_half_rte_local_float16", |
| "test.vstorea_half_rte_global_float3", |
| "test.vstorea_half_rte_private_float3", |
| "test.vstorea_half_rte_local_float3", |
| "test.vstore_half_rtz_global_float", |
| "test.vstore_half_rtz_private_float", |
| "test.vstore_half_rtz_local_float", |
| "test.vstore_half_rtz_global_float2", |
| "test.vstore_half_rtz_private_float2", |
| "test.vstore_half_rtz_local_float2", |
| "test.vstore_half_rtz_global_float4", |
| "test.vstore_half_rtz_private_float4", |
| "test.vstore_half_rtz_local_float4", |
| "test.vstore_half_rtz_global_float8", |
| "test.vstore_half_rtz_private_float8", |
| "test.vstore_half_rtz_local_float8", |
| "test.vstore_half_rtz_global_float16", |
| "test.vstore_half_rtz_private_float16", |
| "test.vstore_half_rtz_local_float16", |
| "test.vstore_half_rtz_global_float3", |
| "test.vstore_half_rtz_private_float3", |
| "test.vstore_half_rtz_local_float3", |
| "test.vstorea_half_rtz_global_float2", |
| "test.vstorea_half_rtz_private_float2", |
| "test.vstorea_half_rtz_local_float2", |
| "test.vstorea_half_rtz_global_float4", |
| "test.vstorea_half_rtz_private_float4", |
| "test.vstorea_half_rtz_local_float4", |
| "test.vstorea_half_rtz_global_float8", |
| "test.vstorea_half_rtz_private_float8", |
| "test.vstorea_half_rtz_local_float8", |
| "test.vstorea_half_rtz_global_float16", |
| "test.vstorea_half_rtz_private_float16", |
| "test.vstorea_half_rtz_local_float16", |
| "test.vstorea_half_rtz_global_float3", |
| "test.vstorea_half_rtz_private_float3", |
| "test.vstorea_half_rtz_local_float3", |
| "test.vstore_half_rtp_global_float", |
| "test.vstore_half_rtp_private_float", |
| "test.vstore_half_rtp_local_float", |
| "test.vstore_half_rtp_global_float2", |
| "test.vstore_half_rtp_private_float2", |
| "test.vstore_half_rtp_local_float2", |
| "test.vstore_half_rtp_global_float4", |
| "test.vstore_half_rtp_private_float4", |
| "test.vstore_half_rtp_local_float4", |
| "test.vstore_half_rtp_global_float8", |
| "test.vstore_half_rtp_private_float8", |