Port framework changes from master

Now requiring the headers to be configured for OpenCL > 2.1.
This commit is contained in:
Kevin Petit
2019-07-31 12:01:00 +01:00
committed by Kévin Petit
parent e535e0aa21
commit 59e2da3b4e
75 changed files with 1418 additions and 196 deletions

View File

@@ -19,7 +19,7 @@ set(CLConform_VERSION "${CLConform_VERSION_MAJOR}.${CLConform_VERSION_MINOR}")
set(CLConform_VERSION_FULL
"${CLConform_VERSION}.${CLConform_VERSION_MICRO}${CLConform_VERSION_EXTRA}")
add_definitions(-DCL_TARGET_OPENCL_VERSION=200)
add_definitions(-DCL_TARGET_OPENCL_VERSION=220)
add_definitions(-DCL_USE_DEPRECATED_OPENCL_2_0_APIS=1)
add_definitions(-DCL_USE_DEPRECATED_OPENCL_1_2_APIS=1)

104
test_common/harness/crc32.c Normal file
View File

@@ -0,0 +1,104 @@
/*-
* COPYRIGHT (C) 1986 Gary S. Brown. You may use this program, or
* code or tables extracted from it, as desired without restriction.
*
* First, the polynomial itself and its table of feedback terms. The
* polynomial is
* X^32+X^26+X^23+X^22+X^16+X^12+X^11+X^10+X^8+X^7+X^5+X^4+X^2+X^1+X^0
*
* Note that we take it "backwards" and put the highest-order term in
* the lowest-order bit. The X^32 term is "implied"; the LSB is the
* X^31 term, etc. The X^0 term (usually shown as "+1") results in
* the MSB being 1
*
* Note that the usual hardware shift register implementation, which
* is what we're using (we're merely optimizing it by doing eight-bit
* chunks at a time) shifts bits into the lowest-order term. In our
* implementation, that means shifting towards the right. Why do we
* do it this way? Because the calculated CRC must be transmitted in
* order from highest-order term to lowest-order term. UARTs transmit
* characters in order from LSB to MSB. By storing the CRC this way
* we hand it to the UART in the order low-byte to high-byte; the UART
* sends each low-bit to hight-bit; and the result is transmission bit
* by bit from highest- to lowest-order term without requiring any bit
* shuffling on our part. Reception works similarly
*
* The feedback terms table consists of 256, 32-bit entries. Notes
*
* The table can be generated at runtime if desired; code to do so
* is shown later. It might not be obvious, but the feedback
* terms simply represent the results of eight shift/xor opera
* tions for all combinations of data and CRC register values
*
* The values must be right-shifted by eight bits by the "updcrc
* logic; the shift must be unsigned (bring in zeroes). On some
* hardware you could probably optimize the shift in assembler by
* using byte-swap instructions
* polynomial $edb88320
*
*
* CRC32 code derived from work by Gary S. Brown.
*/
#include "crc32.h"
static uint32_t crc32_tab[] = {
0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, 0x706af48f,
0xe963a535, 0x9e6495a3, 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988,
0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91, 0x1db71064, 0x6ab020f2,
0xf3b97148, 0x84be41de, 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7,
0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, 0x14015c4f, 0x63066cd9,
0xfa0f3d63, 0x8d080df5, 0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172,
0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, 0x35b5a8fa, 0x42b2986c,
0xdbbbc9d6, 0xacbcf940, 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59,
0x26d930ac, 0x51de003a, 0xc8d75180, 0xbfd06116, 0x21b4f4b5, 0x56b3c423,
0xcfba9599, 0xb8bda50f, 0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924,
0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d, 0x76dc4190, 0x01db7106,
0x98d220bc, 0xefd5102a, 0x71b18589, 0x06b6b51f, 0x9fbfe4a5, 0xe8b8d433,
0x7807c9a2, 0x0f00f934, 0x9609a88e, 0xe10e9818, 0x7f6a0dbb, 0x086d3d2d,
0x91646c97, 0xe6635c01, 0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e,
0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457, 0x65b0d9c6, 0x12b7e950,
0x8bbeb8ea, 0xfcb9887c, 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65,
0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, 0x4adfa541, 0x3dd895d7,
0xa4d1c46d, 0xd3d6f4fb, 0x4369e96a, 0x346ed9fc, 0xad678846, 0xda60b8d0,
0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9, 0x5005713c, 0x270241aa,
0xbe0b1010, 0xc90c2086, 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f,
0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, 0x59b33d17, 0x2eb40d81,
0xb7bd5c3b, 0xc0ba6cad, 0xedb88320, 0x9abfb3b6, 0x03b6e20c, 0x74b1d29a,
0xead54739, 0x9dd277af, 0x04db2615, 0x73dc1683, 0xe3630b12, 0x94643b84,
0x0d6d6a3e, 0x7a6a5aa8, 0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1,
0xf00f9344, 0x8708a3d2, 0x1e01f268, 0x6906c2fe, 0xf762575d, 0x806567cb,
0x196c3671, 0x6e6b06e7, 0xfed41b76, 0x89d32be0, 0x10da7a5a, 0x67dd4acc,
0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5, 0xd6d6a3e8, 0xa1d1937e,
0x38d8c2c4, 0x4fdff252, 0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b,
0xd80d2bda, 0xaf0a1b4c, 0x36034af6, 0x41047a60, 0xdf60efc3, 0xa867df55,
0x316e8eef, 0x4669be79, 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236,
0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f, 0xc5ba3bbe, 0xb2bd0b28,
0x2bb45a92, 0x5cb36a04, 0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d,
0x9b64c2b0, 0xec63f226, 0x756aa39c, 0x026d930a, 0x9c0906a9, 0xeb0e363f,
0x72076785, 0x05005713, 0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38,
0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21, 0x86d3d2d4, 0xf1d4e242,
0x68ddb3f8, 0x1fda836e, 0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777,
0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c, 0x8f659eff, 0xf862ae69,
0x616bffd3, 0x166ccf45, 0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2,
0xa7672661, 0xd06016f7, 0x4969474d, 0x3e6e77db, 0xaed16a4a, 0xd9d65adc,
0x40df0b66, 0x37d83bf0, 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9,
0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605, 0xcdd70693,
0x54de5729, 0x23d967bf, 0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94,
0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d
};
uint32_t
crc32(const void *buf, size_t size)
{
const uint8_t *p;
p = (const uint8_t*)buf;
uint32_t crc = ~0U;
while (size--)
crc = crc32_tab[(crc ^ *p++) & 0xFF] ^ (crc >> 8);
return crc ^ ~0U;
}

View File

@@ -0,0 +1,34 @@
/******************************************************************
Copyright (c) 2016 The Khronos Group Inc.
All Rights Reserved. This code is protected by copyright laws and
contains material proprietary to the Khronos Group, Inc.
This is UNPUBLISHED PROPRIETARY SOURCE CODE that may not be disclosed
in whole or in part to third parties, and may not be reproduced, republished,
distributed, transmitted, displayed, broadcast or otherwise exploited in any
manner without the express prior written permission of Khronos Group.
The receipt or possession of this code does not convey any rights to
reproduce, disclose, or distribute its contents, or to
manufacture, use, or sell anything that it may describe, in whole
or in part other than under the terms of the Khronos Adopters
Agreement or Khronos Conformance Test Source License Agreement as
executed between Khronos and the recipient.
******************************************************************/
#ifndef _CRC32_H_
#define _CRC32_H_
#include <stdint.h>
#include <stddef.h>
#ifdef __cplusplus
extern "C" {
#endif
uint32_t crc32(const void *buf, size_t size);
#ifdef __cplusplus
}
#endif
#endif

View File

@@ -20,6 +20,8 @@
#include "errorHelpers.h"
#include "parseParameters.h"
const char *IGetErrorString( int clErrorCode )
{
switch( clErrorCode )
@@ -705,6 +707,48 @@ const char * subtests_requiring_opencl_1_2[] = {
"popcount"
};
const char * subtests_to_skip_with_offline_compiler[] = {
"get_kernel_arg_info",
"binary_create",
"load_program_source",
"load_multistring_source",
"load_two_kernel_source",
"load_null_terminated_source",
"load_null_terminated_multi_line_source",
"load_null_terminated_partial_multi_line_source",
"load_discreet_length_source",
"get_program_source",
"get_program_build_info",
"options_build_optimizations",
"options_build_macro",
"options_build_macro_existence",
"options_include_directory",
"options_denorm_cache",
"preprocessor_define_udef",
"preprocessor_include",
"preprocessor_line_error",
"preprocessor_pragma",
"compiler_defines_for_extensions",
"image_macro",
"simple_extern_compile_only",
"simple_embedded_header_compile",
"two_file_regular_variable_access",
"two_file_regular_struct_access",
"two_file_regular_function_access",
"simple_embedded_header_link",
"execute_after_simple_compile_and_link_with_defines",
"execute_after_simple_compile_and_link_with_callbacks",
"execute_after_embedded_header_link",
"execute_after_included_header_link",
"multi_file_libraries",
"multiple_files",
"multiple_libraries",
"multiple_files_multiple_libraries",
"multiple_embedded_headers",
"program_binary_type",
"compile_and_link_status_options_log",
"kernel_preprocessor_macros",
};
int check_opencl_version_with_testname(const char *subtestname, cl_device_id device)
{
@@ -751,4 +795,17 @@ int check_opencl_version(cl_device_id device, cl_uint requestedMajorVersion, cl_
return 1;
}
int check_functions_for_offline_compiler(const char *subtestname, cl_device_id device)
{
if (gCompilationMode != kOnline)
{
int nNotRequiredWithOfflineCompiler = sizeof(subtests_to_skip_with_offline_compiler)/sizeof(char *);
size_t i;
for(i=0; i < nNotRequiredWithOfflineCompiler; ++i) {
if(!strcmp(subtestname, subtests_to_skip_with_offline_compiler[i])) {
return 1;
}
}
}
return 0;
}

View File

@@ -87,6 +87,10 @@ extern "C" {
#define test_missing_feature_ret(errCode,msg,retValue) { if( errCode != CL_SUCCESS ) { print_missing_feature( errCode, msg ); return CL_SUCCESS ; } }
#define print_missing_feature(errCode, msg) log_missing_feature("ERROR: Subtest %s tests a feature not supported by the device version! (from %s:%d)\n", msg, __FILE__, __LINE__ );
#define test_missing_support_offline_cmpiler(errCode, msg) test_missing_support_offline_cmpiler_ret(errCode, msg, errCode)
// this macro should always return CL_SUCCESS, but print the skip message on test not supported with offline compiler
#define test_missing_support_offline_cmpiler_ret(errCode,msg,retValue) { if( errCode != CL_SUCCESS ) { log_info( "INFO: Subtest %s tests is not supported in offline compiler execution path! (from %s:%d)\n", msg, __FILE__, __LINE__ ); return TEST_SKIP ; } }
// expected error code vs. what we got
#define test_failure_error(errCode, expectedErrCode, msg) test_failure_error_ret(errCode, expectedErrCode, msg, errCode != expectedErrCode)
#define test_failure_error_ret(errCode, expectedErrCode, msg, retValue) { if( errCode != expectedErrCode ) { print_failure_error( errCode, expectedErrCode, msg ); return retValue ; } }
@@ -123,6 +127,7 @@ extern const char *GetAddressModeName( cl_addressing_mode mode );
extern const char *GetDeviceTypeName( cl_device_type type );
int check_opencl_version_with_testname(const char *subtestname, cl_device_id device);
int check_opencl_version(cl_device_id device, cl_uint requestedMajorVersion, cl_uint requestedMinorVersion);
int check_functions_for_offline_compiler(const char *subtestname, cl_device_id device);
// NON-REENTRANT UNLESS YOU PROVIDE A BUFFER PTR (pass null to use static storage, but it's not reentrant then!)
extern const char *GetDataVectorString( void *dataBuffer, size_t typeSize, size_t vecSize, char *buffer );

File diff suppressed because it is too large Load Diff

View File

@@ -58,11 +58,49 @@ extern "C" {
#define STRINGIFY(_x) #_x
#endif
/* Helper that creates a single program and kernel from a single-kernel program source */
extern int create_single_kernel_helper( cl_context context, cl_program *outProgram, cl_kernel *outKernel, unsigned int numKernelLines, const char **kernelProgram, const char *kernelName );
const int MAX_LEN_FOR_KERNEL_LIST = 20;
extern int create_single_kernel_helper_with_build_options( cl_context context, cl_program *outProgram, cl_kernel *outKernel, unsigned int numKernelLines,
const char **kernelProgram, const char *kernelName, const char *buildOptions );
/* Helper that creates a single program and kernel from a single-kernel program source */
extern int create_single_kernel_helper(cl_context context,
cl_program *outProgram,
cl_kernel *outKernel,
unsigned int numKernelLines,
const char **kernelProgram,
const char *kernelName,
const char *buildOptions = NULL,
const bool openclCXX = false);
extern int create_single_kernel_helper_with_build_options(cl_context context,
cl_program *outProgram,
cl_kernel *outKernel,
unsigned int numKernelLines,
const char **kernelProgram,
const char *kernelName,
const char *buildOptions,
const bool openclCXX = false);
extern int create_single_kernel_helper_create_program(cl_context context,
cl_program *outProgram,
unsigned int numKernelLines,
const char **kernelProgram,
const char *buildOptions = NULL,
const bool openclCXX = false);
/* Creates OpenCL C++ program. This one must be used for creating OpenCL C++ program. */
extern int create_openclcpp_program(cl_context context,
cl_program *outProgram,
unsigned int numKernelLines,
const char **kernelProgram,
const char *buildOptions = NULL);
/* Builds program (outProgram) and creates one kernel */
int build_program_create_kernel_helper(cl_context context,
cl_program *outProgram,
cl_kernel *outKernel,
unsigned int numKernelLines,
const char **kernelProgram,
const char *kernelName,
const char *buildOptions = NULL);
/* Helper to obtain the biggest fit work group size for all the devices in a given group and for the given global thread size */
extern int get_max_common_work_group_size( cl_context context, cl_kernel kernel, size_t globalThreadSize, size_t *outSize );
@@ -125,6 +163,13 @@ cl_device_fp_config get_default_rounding_mode( cl_device_id device );
return 0; \
}
#define PASSIVE_REQUIRE_FP16_SUPPORT(device) \
if (!is_extension_available(device, "cl_khr_fp16")) \
{ \
log_info("\n\tNote: device does not support fp16. Skipping test...\n"); \
return 0; \
}
/* Prints out the standard device header for all tests given the device to print for */
extern int printDeviceHeader( cl_device_id device );

View File

@@ -14,9 +14,167 @@
// limitations under the License.
//
#include "parseParameters.h"
#include "errorHelpers.h"
#include "testHarness.h"
#include "ThreadPool.h"
#include <iostream>
#include <sstream>
#include <sys/types.h>
#include <sys/stat.h>
#include <string.h>
using namespace std;
CompilationMode gCompilationMode = kOnline;
CompilationCacheMode gCompilationCacheMode = kCacheModeCompileIfAbsent;
std::string gCompilationCachePath = ".";
void helpInfo ()
{
log_info("Common options:\n"
" -h, --help This help\n"
" --compilation-mode <mode> Specify a compilation mode. Mode can be:\n"
" online Use online compilation (default)\n"
" binary Use binary offline compilation\n"
" spir-v Use SPIR-V offline compilation\n"
"\n"
" For offline compilation (binary and spir-v modes) only:\n"
" --compilation-cache-mode <cache-mode> Specify a compilation caching mode:\n"
" compile-if-absent Read from cache if already populated, or\n"
" else perform offline compilation (default)\n"
" force-read Force reading from the cache\n"
" overwrite Disable reading from the cache\n"
" --compilation-cache-path <path> Path for offline compiler output and CL source\n"
"\n");
}
int parseCustomParam (int argc, const char *argv[], const char *ignore)
{
int delArg = 0;
for (int i=1; i<argc; i++)
{
if(ignore != 0)
{
// skip parameters that require special/different treatment in application
// (generic interpretation and parameter removal will not be performed)
const char * ptr = strstr(ignore, argv[i]);
if(ptr != 0 &&
(ptr == ignore || ptr[-1] == ' ') && //first on list or ' ' before
(ptr[strlen(argv[i])] == 0 || ptr[strlen(argv[i])] == ' ')) // last on list or ' ' after
continue;
}
delArg = 0;
if (strcmp(argv[i], "-h") == 0 || strcmp(argv[i], "--help") == 0)
{
// Note: we don't increment delArg to delete this argument,
// to allow the caller's argument parsing routine to see the
// option and print its own help.
helpInfo ();
}
else if (!strcmp(argv[i], "--compilation-mode"))
{
delArg++;
if ((i + 1) < argc)
{
delArg++;
const char *mode = argv[i + 1];
if (!strcmp(mode, "online"))
{
gCompilationMode = kOnline;
}
else if (!strcmp(mode, "binary"))
{
gCompilationMode = kBinary;
}
else if (!strcmp(mode, "spir-v"))
{
gCompilationMode = kSpir_v;
}
else
{
log_error("Compilation mode not recognized: %s\n", mode);
return -1;
}
log_info("Compilation mode specified: %s\n", mode);
}
else
{
log_error("Compilation mode parameters are incorrect. Usage:\n"
" --compilation-mode <online|binary|spir-v>\n");
return -1;
}
}
else if (!strcmp(argv[i], "--compilation-cache-mode"))
{
delArg++;
if ((i + 1) < argc)
{
delArg++;
const char *mode = argv[i + 1];
if (!strcmp(mode, "compile-if-absent"))
{
gCompilationCacheMode = kCacheModeCompileIfAbsent;
}
else if (!strcmp(mode, "force-read"))
{
gCompilationCacheMode = kCacheModeForceRead;
}
else if (!strcmp(mode, "overwrite"))
{
gCompilationCacheMode = kCacheModeOverwrite;
}
else
{
log_error("Compilation cache mode not recognized: %s\n", mode);
return -1;
}
log_info("Compilation cache mode specified: %s\n", mode);
}
else
{
log_error("Compilation cache mode parameters are incorrect. Usage:\n"
" --compilation-cache-mode <compile-if-absent|force-read|overwrite>\n");
return -1;
}
}
else if (!strcmp(argv[i], "--compilation-cache-path"))
{
delArg++;
if ((i + 1) < argc)
{
delArg++;
gCompilationCachePath = argv[i + 1];
}
else
{
log_error("Path argument for --compilation-cache-path was not specified.\n");
return -1;
}
}
//cleaning parameters from argv tab
for (int j = i; j < argc - delArg; j++)
argv[j] = argv[j + delArg];
argc -= delArg;
i -= delArg;
}
if (gCompilationCacheMode != kCacheModeCompileIfAbsent && gCompilationMode == kOnline)
{
log_error("Compilation cache mode can only be specified when using an offline compilation mode.\n");
return -1;
}
return argc;
}
bool is_power_of_two(int number)
{
return number && !(number & (number - 1));

View File

@@ -19,6 +19,26 @@
#include "compat.h"
#include <string>
enum CompilationMode
{
kOnline = 0,
kBinary,
kSpir_v
};
enum CompilationCacheMode
{
kCacheModeCompileIfAbsent = 0,
kCacheModeForceRead,
kCacheModeOverwrite
};
extern CompilationMode gCompilationMode;
extern CompilationCacheMode gCompilationCacheMode;
extern std::string gCompilationCachePath;
extern int parseCustomParam (int argc, const char *argv[], const char *ignore = 0 );
extern void parseWimpyReductionFactor(const char *&arg, int &wimpyReductionFactor);
#endif // _parseParameters_h

View File

@@ -26,6 +26,7 @@
#include "kernelHelpers.h"
#include "fpcontrol.h"
#include "typeWrappers.h"
#include "parseParameters.h"
#if !defined(_WIN32)
#include <unistd.h>
@@ -127,6 +128,13 @@ int runTestHarnessWithCheck( int argc, const char *argv[], int testNum, test_def
/* Process the command line arguments */
argc = parseCustomParam(argc, argv);
if (argc == -1)
{
test_finish();
return EXIT_FAILURE;
}
/* Special case: just list the tests */
if( ( argc > 1 ) && (!strcmp( argv[ 1 ], "-list" ) || !strcmp( argv[ 1 ], "-h" ) || !strcmp( argv[ 1 ], "--help" )))
{
@@ -707,6 +715,9 @@ test_status callSingleTestFunction( test_definition test, cl_device_id deviceToU
return TEST_SKIP;
}
error = check_functions_for_offline_compiler(test.name, deviceToUse);
test_missing_support_offline_cmpiler(error, test.name);
if( test.func == NULL )
{
// Skip unimplemented test, can happen when all of the tests are selected

View File

@@ -21,6 +21,8 @@
#include <string>
#include <sstream>
#include <string>
#ifdef __cplusplus
extern "C" {
#endif

View File

@@ -20,6 +20,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/kernelHelpers.c
../../test_common/harness/mt19937.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -13,6 +13,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/typeWrappers.cpp
../../test_common/harness/mt19937.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -19,6 +19,7 @@
#include "allocation_fill.h"
#include "allocation_execute.h"
#include "../../test_common/harness/testHarness.h"
#include "../../test_common/harness/parseParameters.h"
#include <time.h>
typedef long long unsigned llu;
@@ -273,6 +274,13 @@ int main(int argc, const char *argv[])
char *endPtr;
int r;
argc = parseCustomParam(argc, argv);
if (argc == -1)
{
test_finish();
return 1;
}
const char ** argList = (const char **)calloc( argc, sizeof( char*) );
if( NULL == argList )

View File

@@ -29,6 +29,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/mt19937.c
../../test_common/harness/msvc9.c
../../test_common/harness/imageHelpers.cpp
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -11,6 +11,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/mt19937.c
../../test_common/harness/conversions.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -73,6 +73,8 @@ set(${MODULE_NAME}_SOURCES
test_global_linear_id.c
test_local_linear_id.c
test_progvar.cpp
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
if(APPLE)

View File

@@ -20,6 +20,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/mt19937.c
../../test_common/harness/conversions.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -11,8 +11,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/kernelHelpers.c
../../test_common/harness/mt19937.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -27,6 +27,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/mt19937.c
../../test_common/harness/conversions.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -19,6 +19,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/conversions.c
../../test_common/harness/msvc9.c
../../test_common/harness/os_helpers.cpp
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -14,7 +14,8 @@
// limitations under the License.
//
#include "testBase.h"
#include "../../test_common/harness/testHarness.h"
#include "../../test_common/harness/parseParameters.h"
const char *sample_kernel_code_single_line[] = {
"__kernel void sample_test(__global float *src, __global int *dst)\n"

View File

@@ -5,7 +5,9 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/errorHelpers.c
../../test_common/harness/msvc9.c
../../test_common/harness/kernelHelpers.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/testHarness.c
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -9,6 +9,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/rounding_mode.c
../../test_common/harness/kernelHelpers.c
../../test_common/harness/testHarness.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -36,6 +36,7 @@
#include "../../test_common/harness/rounding_mode.h"
#include "../../test_common/harness/fpcontrol.h"
#include "../../test_common/harness/testHarness.h"
#include "../../test_common/harness/parseParameters.h"
#if defined( __APPLE__ )
#include <sys/sysctl.h>
#endif
@@ -321,6 +322,12 @@ const int test_num = ARRAY_SIZE( test_list );
int main( int argc, const char **argv )
{
argc = parseCustomParam(argc, argv);
if (argc == -1)
{
return -1;
}
int error = ParseArgs( argc, argv );
if( !error )

View File

@@ -17,9 +17,10 @@ set (${MODULE_NAME}_SOURCES
../../test_common/harness/msvc9.c
../../test_common/harness/mingw_compat.c
../../test_common/harness/errorHelpers.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/kernelHelpers.c
../../test_common/harness/testHarness.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
if(ANDROID)

View File

@@ -288,6 +288,12 @@ int main (int argc, const char **argv )
int error;
cl_uint seed = (cl_uint) time( NULL );
argc = parseCustomParam(argc, argv);
if (argc == -1)
{
return 1;
}
if( (error = ParseArgs( argc, argv )) )
return error;

View File

@@ -31,7 +31,10 @@ set(D3D10_SOURCES
../../test_common/harness/kernelHelpers.c
../../test_common/harness/mt19937.c
../../test_common/harness/conversions.c
../../test_common/harness/msvc9.c)
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
add_executable(conformance_test_d3d10
${D3D10_SOURCES})

View File

@@ -17,13 +17,17 @@
#define _CRT_SECURE_NO_WARNINGS
#include "harness.h"
#include "../../test_common/harness/testHarness.h"
#include "../../test_common/harness/parseParameters.h"
int main(int argc, char* argv[])
int main(int argc, const char* argv[])
{
cl_int result;
cl_platform_id platform = NULL;
cl_uint num_devices_tested = 0;
argc = parseCustomParam(argc, argv);
// get the platform to test
result = clGetPlatformIDs(1, &platform, NULL); NonTestRequire(result == CL_SUCCESS, "Failed to get any platforms.");

View File

@@ -31,7 +31,10 @@ set(D3D11_SOURCES
../../test_common/harness/kernelHelpers.c
../../test_common/harness/mt19937.c
../../test_common/harness/conversions.c
../../test_common/harness/msvc9.c)
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
add_executable(conformance_test_d3d11
${D3D11_SOURCES})

View File

@@ -19,13 +19,17 @@
#include <vector>
#include <algorithm>
#include "harness.h"
#include "../../test_common/harness/testHarness.h"
#include "../../test_common/harness/parseParameters.h"
int main(int argc, char* argv[])
int main(int argc, const char* argv[])
{
cl_int result;
cl_platform_id platform = NULL;
cl_uint num_devices_tested = 0;
argc = parseCustomParam(argc, argv);
// get the platforms to test
result = clGetPlatformIDs(1, &platform, NULL); NonTestRequire(result == CL_SUCCESS, "Failed to get any platforms.");

View File

@@ -19,6 +19,8 @@ set(DEVICE_EXECUTION_SOURCES
../../test_common/harness/mt19937.c
../../test_common/harness/kernelHelpers.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -21,6 +21,7 @@
#endif
#include "../../test_common/harness/testHarness.h"
#include "../../test_common/harness/parseParameters.h"
#include "utils.h"
#include "procs.h"
@@ -75,6 +76,8 @@ test_status deviceCheck(cl_device_id device)
int main(int argc, const char *argv[])
{
argc = parseCustomParam(argc, argv);
for (int i = 0; i < argc; ++i) {
int argsRemoveNum = 0;
if ( strcmp(argv[i], "-kernelName") == 0 ) {

View File

@@ -12,5 +12,7 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/conversions.c
../../test_common/harness/typeWrappers.cpp
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -19,6 +19,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/conversions.c
../../test_common/harness/msvc9.c
../../test_common/harness/ThreadPool.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -10,6 +10,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/errorHelpers.c
../../test_common/harness/mt19937.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -11,6 +11,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/mt19937.c
../../test_common/harness/conversions.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
# VS2005 optimization WAR for geom_length)

View File

@@ -31,6 +31,8 @@ set (GL_SOURCES
../../test_common/harness/mt19937.c
../../test_common/harness/conversions.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
../../test_common/harness/imageHelpers.cpp
)

View File

@@ -25,6 +25,7 @@
#include "procs.h"
#include "../../test_common/gl/setup.h"
#include "../../test_common/harness/testHarness.h"
#include "../../test_common/harness/parseParameters.h"
#if !defined(_WIN32)
#include <unistd.h>
@@ -160,7 +161,13 @@ int main(int argc, const char *argv[])
int error = 0;
int numErrors = 0;
test_start();
test_start();
argc = parseCustomParam(argc, argv);
if (argc == -1)
{
test_finish ();
return -1;
}
cl_device_type requestedDeviceType = CL_DEVICE_TYPE_DEFAULT;
checkDeviceTypeOverride(&requestedDeviceType);

View File

@@ -9,7 +9,7 @@ set (${MODULE_NAME}_SOURCES
test_images_2D_info.cpp
test_images_3D_info.cpp
test_renderbuffer_info.cpp
test_fence_sync.cpp
test_fence_sync.cpp
helpers.cpp
setup_egl.cpp
../../test_common/gles/helpers.cpp
@@ -21,6 +21,8 @@ set (${MODULE_NAME}_SOURCES
../../test_common/harness/mt19937.c
../../test_common/harness/conversions.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
if(ANDROID)

View File

@@ -10,8 +10,9 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/errorHelpers.c
../../test_common/harness/kernelHelpers.c
../../test_common/harness/ThreadPool.c
../../test_common/harness/testHarness.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/testHarness.c
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -93,6 +93,13 @@ int main (int argc, const char **argv )
g_arrVecAligns[i] = alignbound;
}
argc = parseCustomParam(argc, argv);
if (argc == -1)
{
test_finish();
return -1;
}
if( (error = ParseArgs( argc, argv )) )
goto exit;

View File

@@ -4,6 +4,8 @@ set(HEADERS_SOURCES
../../test_common/harness/kernelHelpers.c
../../test_common/harness/testHarness.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
set_source_files_properties(${HEADERS_SOURCES} PROPERTIES LANGUAGE CXX)

View File

@@ -18,7 +18,7 @@
#else
#include <CL/cl_platform.h>
#endif
#include <stdio.h>
#include "../../test_common/harness/errorHelpers.h"
#include "../../test_common/harness/testHarness.h"

View File

@@ -21,6 +21,8 @@ set(${MODULE_NAME}_SOURCES
../../../test_common/harness/conversions.c
../../../test_common/harness/typeWrappers.cpp
../../../test_common/harness/msvc9.c
../../../test_common/harness/parseParameters.cpp
../../../test_common/harness/crc32.c
)
include(../../CMakeCommon.txt)

View File

@@ -20,6 +20,8 @@ set(${MODULE_NAME}_SOURCES
../../../test_common/harness/conversions.c
../../../test_common/harness/typeWrappers.cpp
../../../test_common/harness/msvc9.c
../../../test_common/harness/parseParameters.cpp
../../../test_common/harness/crc32.c
)

View File

@@ -1,6 +1,6 @@
//
// 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

View File

@@ -16,6 +16,8 @@ set(${MODULE_NAME}_SOURCES
../../../test_common/harness/testHarness.c
../../../test_common/harness/typeWrappers.cpp
../../../test_common/harness/msvc9.c
../../../test_common/harness/parseParameters.cpp
../../../test_common/harness/crc32.c
)
include(../../CMakeCommon.txt)

View File

@@ -17,6 +17,8 @@ set(${MODULE_NAME}_SOURCES
../../../test_common/harness/testHarness.c
../../../test_common/harness/typeWrappers.cpp
../../../test_common/harness/msvc9.c
../../../test_common/harness/parseParameters.cpp
../../../test_common/harness/crc32.c
)
include(../../CMakeCommon.txt)

View File

@@ -17,6 +17,8 @@ set(${MODULE_NAME}_SOURCES
../../../test_common/harness/testHarness.c
../../../test_common/harness/typeWrappers.cpp
../../../test_common/harness/msvc9.c
../../../test_common/harness/parseParameters.cpp
../../../test_common/harness/crc32.c
)
include(../../CMakeCommon.txt)

View File

@@ -14,6 +14,7 @@
// limitations under the License.
//
#include "../../../test_common/harness/compat.h"
#include "../../../test_common/harness/parseParameters.h"
#include <stdio.h>
#include <string.h>
@@ -74,6 +75,13 @@ int main(int argc, const char *argv[])
{
cl_channel_type chanType;
argc = parseCustomParam(argc, argv);
if (argc == -1)
{
test_finish();
return -1;
}
checkDeviceTypeOverride( &gDeviceType );
const char ** argList = (const char **)calloc( argc, sizeof( char*) );

View File

@@ -22,6 +22,8 @@ set(${MODULE_NAME}_SOURCES
../../../test_common/harness/testHarness.c
../../../test_common/harness/typeWrappers.cpp
../../../test_common/harness/msvc9.c
../../../test_common/harness/parseParameters.cpp
../../../test_common/harness/crc32.c
)
include(../../CMakeCommon.txt)

View File

@@ -25,6 +25,7 @@
#include "../testBase.h"
#include "../../../test_common/harness/fpcontrol.h"
#include "../../../test_common/harness/parseParameters.h"
#include <vector>
@@ -266,6 +267,13 @@ int main(int argc, const char *argv[])
cl_channel_type chanType;
cl_channel_order chanOrder;
argc = parseCustomParam(argc, argv);
if (argc == -1)
{
test_finish();
return -1;
}
//Check CL_DEVICE_TYPE environment variable
checkDeviceTypeOverride( &gDeviceType );

View File

@@ -18,6 +18,8 @@ set(${MODULE_NAME}_SOURCES
../../../test_common/harness/testHarness.c
../../../test_common/harness/typeWrappers.cpp
../../../test_common/harness/msvc9.c
../../../test_common/harness/parseParameters.cpp
../../../test_common/harness/crc32.c
)
include(../../CMakeCommon.txt)

View File

@@ -25,6 +25,7 @@
#include "../testBase.h"
#include "../../../test_common/harness/fpcontrol.h"
#include "../../../test_common/harness/parseParameters.h"
#if defined(__PPC__)
// Global varaiable used to hold the FPU control register state. The FPSCR register can not
@@ -87,6 +88,12 @@ int main(int argc, const char *argv[])
cl_channel_type chanType;
cl_channel_order chanOrder;
argc = parseCustomParam(argc, argv);
if (argc == -1)
{
return -1;
}
//Check CL_DEVICE_TYPE environment variable
checkDeviceTypeOverride( &gDeviceType );

View File

@@ -19,8 +19,9 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/testHarness.c
../../test_common/harness/kernelHelpers.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -23,10 +23,11 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/ThreadPool.c
../../test_common/harness/mt19937.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/kernelHelpers.c
../../test_common/harness/errorHelpers.c
../../test_common/harness/testHarness.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
@@ -51,6 +52,7 @@ endif(NOT ANDROID)
set_source_files_properties(
${MODULE_NAME}_SOURCES
../../test_common/harness/crc32.c
PROPERTIES LANGUAGE CXX)
if(CMAKE_COMPILER_IS_GNUCC)

View File

@@ -13,7 +13,6 @@
// See the License for the specific language governing permissions and
// limitations under the License.
//
#include "../../test_common/harness/parseParameters.h"
#include "Utility.h"
#include <stdio.h>
@@ -26,6 +25,7 @@
#include "../../test_common/harness/errorHelpers.h"
#include "../../test_common/harness/kernelHelpers.h"
#include "../../test_common/harness/parseParameters.h"
#if defined( __APPLE__ )
#include <sys/sysctl.h>
@@ -814,6 +814,11 @@ int main (int argc, const char * argv[])
{
int error;
argc = parseCustomParam(argc, argv);
if (argc == -1)
{
return -1;
}
atexit(TestFinishAtExit);
#if defined( __APPLE__ )

View File

@@ -14,6 +14,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/conversions.c
../../test_common/harness/ThreadPool.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -13,6 +13,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/conversions.c
../../test_common/harness/mt19937.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
@@ -28,6 +30,8 @@ set_source_files_properties(
../../test_common/harness/kernelHelpers.c
../../test_common/harness/conversions.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
PROPERTIES LANGUAGE CXX)
include(../CMakeCommon.txt)

View File

@@ -12,6 +12,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/errorHelpers.c
../../test_common/harness/kernelHelpers.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -16,6 +16,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/mt19937.c
../../test_common/harness/conversions.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -14,6 +14,9 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/msvc9.c
../../test_common/harness/testHarness.c
#../../test_common/harness/imageHelpers.cpp
../../test_common/harness/parseParameters.cpp
../../test_common/harness/kernelHelpers.c
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -41,6 +41,7 @@
#include "../../test_common/harness/errorHelpers.h"
#include "../../test_common/harness/kernelHelpers.h"
#include "../../test_common/harness/mt19937.h"
#include "../../test_common/harness/parseParameters.h"
typedef unsigned int uint32_t;
@@ -994,8 +995,14 @@ const int test_num = ARRAY_SIZE( test_list );
//-----------------------------------------
// main
//-----------------------------------------
int main(int argc, char* argv[])
int main(int argc, const char* argv[])
{
argc = parseCustomParam(argc, argv);
if (argc == -1)
{
return -1;
}
const char ** argList = (const char **)calloc( argc, sizeof( char*) );
if( NULL == argList )

View File

@@ -17,6 +17,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/mt19937.c
../../test_common/harness/conversions.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -13,6 +13,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/mt19937.c
../../test_common/harness/conversions.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -9,6 +9,7 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/kernelHelpers.c
../../test_common/harness/errorHelpers.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -17,7 +17,8 @@ set (SPIR_SOURCES
../../test_common/harness/msvc9.c
../../test_common/harness/os_helpers.cpp
../../test_common/harness/testHarness.c
../../test_common/miniz/miniz.c)
../../test_common/miniz/miniz.c
../../test_common/harness/crc32.c)
add_executable(${SPIR_OUT}
${SPIR_SOURCES})

View File

@@ -349,7 +349,6 @@ bool test_suite(cl_device_id device, cl_uint size_t_width, const char *folder,
std::cout << std::endl;
return false;
}
std::cout << std::endl;
return true;
}

View File

@@ -14,7 +14,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/msvc9.c
../../test_common/harness/ThreadPool.c
../../test_common/harness/conversions.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -11,6 +11,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/mt19937.c
../../test_common/harness/conversions.c
../../test_common/harness/msvc9.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
set_source_files_properties(

View File

@@ -12,6 +12,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/kernelHelpers.c
../../test_common/harness/errorHelpers.c
../../test_common/harness/conversions.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
set_source_files_properties(

View File

@@ -11,6 +11,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/msvc9.c
../../test_common/harness/kernelHelpers.c
../../test_common/harness/errorHelpers.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
set_source_files_properties(

View File

@@ -20,6 +20,8 @@ set(${MODULE_NAME}_SOURCES
../../test_common/harness/mt19937.c
../../test_common/harness/msvc9.c
../../test_common/harness/conversions.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
)
include(../CMakeCommon.txt)

View File

@@ -18,6 +18,8 @@ set (MEDIA_SOURCES
../../test_common/harness/rounding_mode.c
../../test_common/harness/typeWrappers.cpp
../../test_common/harness/mt19937.c
../../test_common/harness/parseParameters.cpp
../../test_common/harness/crc32.c
../../test_common/harness/msvc9.c
)