1 // 2 // Copyright (c) 2017 The Khronos Group Inc. 3 // 4 // Licensed under the Apache License, Version 2.0 (the "License"); 5 // you may not use this file except in compliance with the License. 6 // You may obtain a copy of the License at 7 // 8 // http://www.apache.org/licenses/LICENSE-2.0 9 // 10 // Unless required by applicable law or agreed to in writing, software 11 // distributed under the License is distributed on an "AS IS" BASIS, 12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 // See the License for the specific language governing permissions and 14 // limitations under the License. 15 // 16 #ifndef _procs_h 17 #define _procs_h 18 19 #include "harness/testHarness.h" 20 #include "harness/kernelHelpers.h" 21 #include "harness/errorHelpers.h" 22 #include "harness/conversions.h" 23 #include "harness/typeWrappers.h" 24 #include "harness/mt19937.h" 25 26 extern MTdata gMTdata; 27 28 extern int test_sub_group_info_ext(cl_device_id device, cl_context context, 29 cl_command_queue queue, int num_elements); 30 extern int test_sub_group_info_core(cl_device_id device, cl_context context, 31 cl_command_queue queue, int num_elements); 32 extern int test_work_item_functions_ext(cl_device_id device, cl_context context, 33 cl_command_queue queue, 34 int num_elements); 35 extern int test_work_item_functions_core(cl_device_id device, 36 cl_context context, 37 cl_command_queue queue, 38 int num_elements); 39 extern int test_subgroup_functions_ext(cl_device_id device, cl_context context, 40 cl_command_queue queue, 41 int num_elements); 42 extern int test_subgroup_functions_core(cl_device_id device, cl_context context, 43 cl_command_queue queue, 44 int num_elements); 45 extern int test_barrier_functions_ext(cl_device_id device, cl_context context, 46 cl_command_queue queue, int num_elements); 47 extern int test_barrier_functions_core(cl_device_id device, cl_context context, 48 cl_command_queue queue, 49 int num_elements); 50 extern int test_pipe_functions(cl_device_id device, cl_context context, 51 cl_command_queue queue, int num_elements); 52 extern int test_ifp_ext(cl_device_id device, cl_context context, 53 cl_command_queue queue, int num_elements); 54 extern int test_ifp_core(cl_device_id device, cl_context context, 55 cl_command_queue queue, int num_elements); 56 extern int test_subgroup_functions_extended_types(cl_device_id device, 57 cl_context context, 58 cl_command_queue queue, 59 int num_elements); 60 extern int test_subgroup_functions_non_uniform_vote(cl_device_id device, 61 cl_context context, 62 cl_command_queue queue, 63 int num_elements); 64 extern int test_subgroup_functions_non_uniform_arithmetic( 65 cl_device_id device, cl_context context, cl_command_queue queue, 66 int num_elements); 67 extern int test_subgroup_functions_ballot(cl_device_id device, 68 cl_context context, 69 cl_command_queue queue, 70 int num_elements); 71 extern int test_subgroup_functions_clustered_reduce(cl_device_id device, 72 cl_context context, 73 cl_command_queue queue, 74 int num_elements); 75 extern int test_subgroup_functions_shuffle(cl_device_id device, 76 cl_context context, 77 cl_command_queue queue, 78 int num_elements); 79 extern int test_subgroup_functions_shuffle_relative(cl_device_id device, 80 cl_context context, 81 cl_command_queue queue, 82 int num_elements); 83 extern int test_subgroup_functions_rotate(cl_device_id device, 84 cl_context context, 85 cl_command_queue queue, 86 int num_elements); 87 #endif /*_procs_h*/ 88