17ec681f3Smrg// 27ec681f3Smrg// Copyright 2020 Red Hat 37ec681f3Smrg// 47ec681f3Smrg// Permission is hereby granted, free of charge, to any person obtaining a 57ec681f3Smrg// copy of this software and associated documentation files (the "Software"), 67ec681f3Smrg// to deal in the Software without restriction, including without limitation 77ec681f3Smrg// the rights to use, copy, modify, merge, publish, distribute, sublicense, 87ec681f3Smrg// and/or sell copies of the Software, and to permit persons to whom the 97ec681f3Smrg// Software is furnished to do so, subject to the following conditions: 107ec681f3Smrg// 117ec681f3Smrg// The above copyright notice and this permission notice shall be included in 127ec681f3Smrg// all copies or substantial portions of the Software. 137ec681f3Smrg// 147ec681f3Smrg// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 157ec681f3Smrg// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 167ec681f3Smrg// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 177ec681f3Smrg// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR 187ec681f3Smrg// OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 197ec681f3Smrg// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 207ec681f3Smrg// OTHER DEALINGS IN THE SOFTWARE. 217ec681f3Smrg// 227ec681f3Smrg 237ec681f3Smrg#include "api/util.hpp" 247ec681f3Smrg#include "core/context.hpp" 257ec681f3Smrg#include "core/platform.hpp" 267ec681f3Smrg 277ec681f3Smrgusing namespace clover; 287ec681f3Smrg 297ec681f3Smrg// This contains all the CL 2.x API entrypoints that return INVALID_OPERATON 307ec681f3Smrg// on CL 3.0. If these are implemented they should be moved out of this file. 317ec681f3Smrg 327ec681f3SmrgCLOVER_API cl_mem 337ec681f3SmrgclCreatePipe(cl_context d_ctx, 347ec681f3Smrg cl_mem_flags flags, 357ec681f3Smrg cl_uint pipe_packet_size, 367ec681f3Smrg cl_uint pipe_max_packets, 377ec681f3Smrg const cl_pipe_properties *properties, 387ec681f3Smrg cl_int *r_errorcode) { 397ec681f3Smrg *r_errorcode = CL_INVALID_OPERATION; 407ec681f3Smrg return nullptr; 417ec681f3Smrg} 427ec681f3Smrg 437ec681f3Smrg 447ec681f3SmrgCLOVER_API cl_int 457ec681f3SmrgclGetPipeInfo(cl_mem pipe, 467ec681f3Smrg cl_pipe_info param_name, 477ec681f3Smrg size_t param_value_size, 487ec681f3Smrg void *param_value, 497ec681f3Smrg size_t *param_value_size_ret) { 507ec681f3Smrg return CL_INVALID_MEM_OBJECT; 517ec681f3Smrg} 527ec681f3Smrg 537ec681f3SmrgCLOVER_API cl_int 547ec681f3SmrgclGetDeviceAndHostTimer(cl_device_id device, 557ec681f3Smrg cl_ulong *device_timestamp, 567ec681f3Smrg cl_ulong *host_timestamp) { 577ec681f3Smrg return CL_INVALID_OPERATION; 587ec681f3Smrg} 597ec681f3Smrg 607ec681f3SmrgCLOVER_API cl_int 617ec681f3SmrgclGetHostTimer(cl_device_id device, 627ec681f3Smrg cl_ulong *host_timestamp) { 637ec681f3Smrg return CL_INVALID_OPERATION; 647ec681f3Smrg} 657ec681f3Smrg 667ec681f3Smrg 677ec681f3SmrgCLOVER_API cl_int 687ec681f3SmrgclGetKernelSubGroupInfo(cl_kernel d_kern, 697ec681f3Smrg cl_device_id device, 707ec681f3Smrg cl_kernel_sub_group_info param_name, 717ec681f3Smrg size_t input_value_size, 727ec681f3Smrg const void *input_value, 737ec681f3Smrg size_t param_size_value, 747ec681f3Smrg void *param_value, 757ec681f3Smrg size_t *param_value_size_ret) { 767ec681f3Smrg return CL_INVALID_OPERATION; 777ec681f3Smrg} 787ec681f3Smrg 797ec681f3Smrg 807ec681f3SmrgCLOVER_API cl_int 817ec681f3SmrgclSetDefaultDeviceCommandQueue(cl_context context, 827ec681f3Smrg cl_device_id device, 837ec681f3Smrg cl_command_queue command_queue) { 847ec681f3Smrg return CL_INVALID_OPERATION; 857ec681f3Smrg} 867ec681f3Smrg 877ec681f3SmrgCLOVER_API cl_int 887ec681f3SmrgclSetProgramReleaseCallback(cl_program d_prog, 897ec681f3Smrg void (CL_CALLBACK *pfn_notify)(cl_program program, void *user_data), 907ec681f3Smrg void *user_data) { 917ec681f3Smrg return CL_INVALID_OPERATION; 927ec681f3Smrg} 937ec681f3Smrg 947ec681f3SmrgCLOVER_API cl_int 957ec681f3SmrgclSetProgramSpecializationConstant(cl_program program, 967ec681f3Smrg cl_uint spec_id, 977ec681f3Smrg size_t spec_size, 987ec681f3Smrg const void* spec_value) { 997ec681f3Smrg return CL_INVALID_OPERATION; 1007ec681f3Smrg} 101