Commit Graph

92 Commits

Author SHA1 Message Date
Stuart Brady
7486dd13ad Remove source transformation support
This change removes support for the "source" mode of offline compilation
which is commented with "to be removed in the future as we will use
offline compiler here".

The "source" mode allowed for the CL source to be transformed by
build_script_source.py and then passed to clCreateProgramWithSource(),
and appears to have been developed only for the purpose of testing the
offline compilation infrastructure.
2019-07-05 14:27:25 +01:00
Wenju He
e1874ba732 c11_atomics: fix ambiguous call atomic_fetch_add (#354)
Cast operand type to AddSubOperandType.
2019-07-05 11:37:23 +01:00
Nikhil Joshi
9686ea098c Fix enqueue_flags test to use correct barrier type. (#349)
Currently, enqueue_flags test uses CLK_LOCAL_MEM_FENCE.
Use CLK_GLOBAL_MEM_FENCE instead as all threads across work-groups
need to wait here.
2019-07-03 14:10:26 +01:00
Grzegorz Wawiorko
f7f6208f62 Fix test_api - query for device extensions in queue hint test (#352) 2019-07-03 12:16:05 +01:00
robquill
4eee1fe25e Use slice pitch instead of row pitch for 1D arrays. (#314)
Fixes fill_image 1Darray
2019-06-18 10:28:22 +01:00
Grzegorz Wawiorko
664b1ccf8d cl21: Enable compilation of spir 1.2 tests (#304)
* Enable compilation of spir 1.2 tests

* Files to copy as a list of files.
2019-06-17 12:59:44 +01:00
Grzegorz Wawiorko
94beef7cd3 Intel compiler bruteforce - fix signbitl function (#292) 2019-06-11 09:42:44 +01:00
Grzegorz Wawiorko
fcae94452d Intel compiler changes in cmake (#289) 2019-06-11 09:26:24 +01:00
Grzegorz Wawiorko
0c1f8d3166 Intel compiler - fix assert when checking OCL version (#291) 2019-06-11 09:25:27 +01:00
Grzegorz Wawiorko
616af4e2d8 Intel compiler changes compat.h (#290) 2019-06-11 09:24:10 +01:00
Marco Antognini
d99f96fe18 Improve exit codes (#32) (#297)
This patch ensures runTestHarness returns either EXIT_FAILURE or
EXIT_SUCCESS to avoid undefined behaviour.
2019-05-31 11:43:02 +01:00
Nikhil Joshi
03813a9674 Fix test_host_queue_order not to rely on bit accurate float ops (#294)
Currently, test_host_queue_order relies on bit accurate float ops.
It expects expects that sqrt((float)i * i) == i.
This is not always true due to floating point precision limitations.
The test does not really need the sqrt operation and it can be removed
instead of trying to correct the floating point check.

Replace problematic float operation with constant value of 1.
2019-05-29 11:09:04 +01:00
Grzegorz Wawiorko
fa312ab953 cl21: Fix Issue #35 - ask for capability size. Too small size could cause errors (#96)
* Fix Issue #35 - ask for capability size. Too small size could cause errors

* Fix Issue #35 - Review fixes

* Fix Issue #35 - Review fixes - build issues fixed
2019-05-23 18:19:51 +01:00
Radek Szymanski
bfb3e4aa2c cl21: Add minimal required version functionality (#270)
This adds functionality to define minimal required version through the
ADD_TEST* macros. Tests that don't meet the version requirement will
be skipped.

By default the minimal required version is set to 1.0, subsequent
patches will set the appropriate version for each of the tests.

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-05-22 18:31:01 +01:00
Grzegorz Wawiorko
32e702efbc cl21: Fix Issue 38 - Test spirv_new - new test for cl_khr_spirv_no_integer_… (#119)
* Fix Issue 38 - Test spirv_new - new test for cl_khr_spirv_no_integer_wrap_decoration SPV_KHR_no_integer_wrap_decoration extension

* Remove not used variable.
2019-05-22 15:56:43 +01:00
Radek Szymanski
a6fdb7ce60 cl21: Use test_status for test results (#274)
This moves from numeric values to enum values to keep result state of
the test, so we can easily save this information in JSON results.

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-05-17 14:31:55 +01:00
Sven van Haastregt
caae56d32c cl21: Add image access qualifier for spirv_new binaries (#272)
The OpenCL SPIR-V Environment Specification v2.2-10, Section 2.1
states that:

    For all OpTypeImage type-declaration instructions:
    The optional image Access Qualifier must be present.

Add the ReadOnly or WriteOnly qualifier as appropriate to the .spvasm
files, and regenerate the .spv files using

    spirv-as --target-env spv1.0
2019-05-15 19:02:06 +01:00
Grzegorz Wawiorko
4f71ca382b cl21: Fix Issue 264 - travis builds configuration fixed because of changes in icd loader project (#265)
* Fix Issue 264 - travis builds configuration fixed because of changes in icd loader project

* Fix Issue 264 - Fix multi line issue
2019-05-15 12:12:55 +01:00
Radek Szymanski
f747995668 cl21: Reuse test harness code in kernel_read_write (#242)
Some of the setup functionality is already there in the test harness, so
use that and remove the duplicated code from within the suite.

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-05-01 21:19:47 +08:00
Radek Szymanski
d8f307f7e6 cl21: Reuse test harness code in contractions (#253)
Some of the setup functionality is already there in the test harness, so
use that and remove the duplicated code from within the suite.

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-05-01 19:10:58 +08:00
Radek Szymanski
3aae1d60ef cl21: Reuse test harness code in headers (#256)
Some of the setup functionality is already there in the test harness, so
use that and remove the duplicated code from within the suite.

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-05-01 19:09:01 +08:00
cdai2
abe52cae81 Fix Issue #53: required buffer size exceed the available size in non_uniform_work_group (#54) 2019-04-30 22:21:35 +08:00
Pierre Moreau
3001148ca9 cl21: CMake improvements (#236)
* Do not append non-existing folder to CMAKE_MODULE_PATH

Fixes #221

* Add use of deprecated OpenCL 1.2 and 2.1 APIs

* Define CL_TARGET_OPENCL_VERSION to 210

Fixes #227

* Define cmake_minimum_required as first operation

The CMake documentation mentions that
> Call the cmake_minimum_required() command at the beginning of the
> top-level CMakeLists.txt file even before calling the project()
> command. It is important to establish version and policy settings
> before invoking other commands whose behavior they may affect.

* CMake: Match both AppleClang and Clang
2019-04-30 22:20:20 +08:00
Radek Szymanski
211ea1e342 cl21: Reuse test harness code in samplerlessReads (#245)
Some of the setup functionality is already there in the test harness, so
use that and remove the duplicated code from within the suite.

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-04-30 22:17:44 +08:00
Wenju He
17b102e2e4 Fix ilogbl crash and fetestexcept build if _MSC_VER>=1800 (#230)
FP_ILOGB0, FP_ILOGBNAN, ilogbm, ilogbf, ilogbl, fetestexcept and
feclearexcept are supported in Visual Studio 2013.
2019-04-29 20:41:01 +08:00
Pierre Moreau
b77db8686c Fix typos in main CMakeLists.txt (#233) 2019-04-27 08:34:05 +08:00
Pierre Moreau
d8666d5409 Add toggle for enabling OpenGL ES interop tests 2019-04-26 01:39:37 +01:00
Pierre Moreau
b23c6a6e1d Mark the graphics interop toggles as options
This allows enabling/disabling them via CMake without editing the
CMakeLists.txt file.
2019-04-26 01:39:37 +01:00
Pierre Moreau
eb1b484c29 Fix compilation of gl/main.cpp
Fixes 07196c35 ("cl22: Use single array for function list (#148)")
2019-04-26 01:39:37 +01:00
Pierre Moreau
92fcfeda22 gl: Add missing tests to the CMakeLists.txt 2019-04-26 01:39:37 +01:00
Pierre Moreau
30fae0f9b1 gl: Remove non-existent file and fix compilation 2019-04-26 01:39:37 +01:00
Wenju He
f380c730da Use unique tmp file to allow parallel printf tests (#101)
Parallel printf tests fail because they use the same file /tmp/tmpfile
to capture OpenCL kernel outputs. This patch solves this problem by
using a unique file for each process.
2019-04-25 18:10:03 +01:00
Radek Szymanski
e9d9ffac6d cl21: Reuse test harness code in clFillImage (#201)
Some of the setup functionality is already there in the test harness, so
use that and remove the duplicated code from within the suite.

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-04-25 02:49:11 +01:00
Radek Szymanski
189d907d76 cl21: Reuse test harness code in clCopyImage (#198)
Some of the setup functionality is already there in the test harness, so
use that and remove the duplicated code from within the suite.

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-04-25 02:46:05 +01:00
Radek Szymanski
b1db97e403 cl21: Reuse test harness code in clReadWriteImage (#207)
Some of the setup functionality is already there in the test harness, so
use that and remove the duplicated code from within the suite.

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-04-25 02:16:24 +01:00
Radek Szymanski
7185e9bb06 cl21: Reuse test harness code in clGetInfo (#204)
Some of the setup functionality is already there in the test harness, so
use that and remove the duplicated code from within the suite.

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-04-25 01:56:50 +01:00
aarongreig
adb9dbbef9 Check device address width when deciding which SPIR-V binary to read (#172) 2019-04-25 01:42:12 +01:00
Radek Szymanski
a28cfca522 cl21: Reuse test harness code in kernel_image_methods (#210)
Some of the setup functionality is already there in the test harness, so
use that and remove the duplicated code from within the suite.

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-04-24 04:28:38 +01:00
Radek Szymanski
0c45098fd4 cl21: Reuse test harness code in half (#191)
Some of the setup functionality is already there in the test harness, so
use that and remove the duplicated code from within the suite.

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-04-22 12:11:15 +01:00
Wenju He
920f9ec127 Remove redundant releaseOutputStream call in printf (#217) 2019-04-22 12:07:11 +01:00
Radek Szymanski
d3d302187f cl21: Reuse test harness code in math_brute_force (#195)
Some of the setup functionality is already there in the test harness, so
use that and remove the duplicated code from within the suite.

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-04-22 12:05:22 +01:00
Radek Szymanski
cba9dcebe5 cl21: Reuse test harness code in allocations (#188)
Some of the setup functionality is already there in the test harness, so
use that and remove the duplicated code from within the suite.

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-04-22 12:02:51 +01:00
Wenju He
00f716b0f8 Reuse math_brute_force ulp threshold in spir test
Spir test compares floating-point kernel results bit-by-bit with
correct results. However, for math_brute_force kernels, specification
does not ask for SPIR and OpenCL C path to match bit-to-bit. This patch
reuses ulps threshold from math_brute_force folder for math_brute_force
kernels in spir test.

Signed-off-by: Wenju He <wenju.he@intel.com>
2019-04-19 14:51:40 +01:00
Radek Szymanski
a82e620b98 cl21: Test Harness minor cleanup (#185)
* Report an error when unimplemented test was specified
* Merge two common functions

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-04-18 15:10:14 +01:00
Grzegorz Wawiorko
700e68c732 cl21: Improved CRC calculation (#132)
* Improved CRC calculation

* Improved CRC calculation - review fix

* Improved CRC calculation - build brake fix

* Improved CRC calculation - remove external initializaiton
2019-04-18 14:59:04 +01:00
Jeremy Kemp
fb6ee7e939 cl21: Compiler - updated extension list for compiler_defines_for_exensions (#175)
* cl12: Compiler - added missing extensions to compiler_defines_for_extensions.

Updated the list of known extensions to include all extensions referenced in the OpenCL Extension Specification 1.2 - Revision 25 and OpenCL Specification 1.2 - Revision 19 documents.

* Re-added the cl_khr_il_program extension.

This was this was erroneously removed in the previous commit.

* Compiler: Added all known extensions to compiler_defines_for_extensions.

After discussion on the pull request, it was decided to have this test test for all known khr extensions accross all API levels. Some vendors support 2.x extensions on 1.x implementations, so wanted to ensure that the test still covered those cases.

Re-ordered each sub-list so that the order in which each extension appears mirrors that of https://www.khronos.org/registry/OpenCL/specs/2.2/html/OpenCL_Ext.html.

For reference: https://github.com/KhronosGroup/OpenCL-CTS/pull/55.

* Compiler: Moved priority and throttle hints to the API-only section of the array in compiler_defines_for_extensions.
2019-04-16 14:46:15 +01:00
Radek Szymanski
6acb468997 cl21: Reuse test harness code in conversions (#179)
Some of the setup functionality is already there in the test harness, so
use that and remove the duplicated code from within the suite.

Signed-off-by: Radek Szymanski <radek.szymanski@arm.com>
2019-04-16 11:52:21 +01:00
Grzegorz Wawiorko
113788517c Review fixes 2019-04-15 16:09:06 +01:00
Bartosz Sochacki
9e468747aa build break fix for bug 15266 "Add test for -cl-fp32-correctly-rounded-divide-sqrt to spir subtest." 2019-04-15 16:09:06 +01:00
Yaxun (Sam) Liu
ec6ceafc79 Add test for -cl-fp32-correctly-rounded-divide-sqrt to spir subtest. 2019-04-15 16:09:06 +01:00