summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-03-22Merge remote-tracking branch 'origin/upstream'mainFrank Piva
2024-03-13OpenCL-Headers: Added build, metadata, owners and licenseupstreamJeremy Kemp
Third-Party Import of: https://github.com/KhronosGroup/OpenCL-Headers Request Document: go/android3p For CL Reviewers: go/android3p#cl-review For Build Team: go/ab-third-party-imports Bug: http://b/326052668 Change-Id: I137d32942536d1ce786e1d8ee29995f9f8d237b9
2024-02-22Initial empty repositoryInna Palant
2023-12-12updates extension headers for the latest XML file (#244)upstream/v2023.12.14joshqti
Add clReImportSemaphoreSyncFd
2023-11-14updates extension headers for the latest XML file (#240)Ben Ashbaugh
Adds bits for cl_khr_initialize_memory Adds separate device handle lists for external memory and semaphores Adds enums for cl_arm_scheduling_controls
2023-10-03Update extension headers for latest cl.xml changes (#242)Michal Babej
- add clCommandSVMMemcpyKHR and clCommandSVMMemFillKHR
2023-09-26add compatibility notes (#238)Ben Ashbaugh
* update README with compatibility notes * minor wordsmithing * clarify when to use tagged or released OpenCL API headers
2023-09-26fix VME skip block type enum to match spec (#241)Ben Ashbaugh
2023-09-15fix the OpenCL version for the CL_DEPTH enum (#231)Ben Ashbaugh
also fix CL_DEPTH_STENCIL and CL_UNORM_INT24, which were never core enums
2023-09-12require C99 for header tests (#208)Ben Ashbaugh
* require C99 for header tests * also require C++11 for header tests * do not overwrite settings if set by user Co-authored-by: Nagy-Egri Máté Ferenc <beiktatas+github@outlook.hu> * fix copy-paste error --------- Co-authored-by: Nagy-Egri Máté Ferenc <beiktatas+github@outlook.hu>
2023-09-12sort new extensions programmatically (#236)Ben Ashbaugh
The generated extension headers maintained an ordered list of older extensions to minimize diffs with the non-generated extension headers, but there is no reason to require this for new extensions. If a new extension is not found in the list, sort it at the end automatically. Note, Khronos (KHR) extensions will also be sorted before multi-vendor (EXT) extensions, and before vendor extensions.
2023-09-12Update extension headers (#235)Kévin Petit
- Add cl_ext_image_raw10_raw12 definitions - Remove CL_COMMAND_BUFFER_STATE_INVALID_KHR Signed-off-by: Kevin Petit <kevin.petit@arm.com>
2023-08-29Header update for external_memory_import (#234)Sreelakshmi Haridas Maruthur
* Header update for external_memory_import * Fix token name to match update on the spec
2023-05-09Define function types for prototype declaration (#230)Brice Videau
* Use function type definitions and use these to defines pointer types. * Add generated function type definitions. * Leverage function types in cl_icd.h. * Add missing include guards. * Cosmetic. * Add function pointer definitions for core APIs. * Use newly defined function pointers for core APIs. * Only use function types for icd dispatch table.
2023-04-17add headers for cl_khr_command_buffer_multi_device (#229)upstream/v2023.04.17Ben Ashbaugh
2023-04-13add code generation README (#228)Ben Ashbaugh
* add README, update required Mako version * minor grammar fix Co-authored-by: Ewan Crawford <ewan.cr@gmail.com> --------- Co-authored-by: Ewan Crawford <ewan.cr@gmail.com>
2023-04-11Code Generation for Extension Headers (#161)Ben Ashbaugh
* initial generation script and template * added ability to generate additional headers for sharing extensions * switch to generated headers for extensions passing header tests with generated headers improve generation for extensions that share type names remove incorrectly added file update to latest generated files * remove CL_API_ENTRY from the generated extension typedefs * add requirements.txt (generated with pipreqs) * do not generate cl_layer.h The function pointers in cl_layer.h currently use a different convention in the ICD loader. Alternatives are to align to the cl_layer.h convention, to not generate this header, or to figure out how to selectively generate a different convention in some cases. * refactored into separate functions to align with ICD loader generation handle functions with no arguments * sort bit enums * updates for sharing format query extensions * added support for CL_NO_PROTOTYPES define appended EXTENSION_NAME to extension name define * generate new extensions: cl_khr_semaphore cl_khr_external_semaphore (and related extensions) cl_khr_external_memory (and related extensions) cl_intel_device_attribute_query * handle the case where the bit shift amount is greater than 31 Done by shifting the unsigned long long literal 1ULL. This is done conditionally for now, only when the shift amount is greater than 31, because shifting by 31 or less is defined. * Activate generation for cl_layer.h. * Regenerate headers. * minor updates for pfn_ function pointer typedef generation * update copyright dates * generate headers with latest XML file cl_intel_program_scope_host_pipe * add an extension condition check for the entire extension This is needed for cl_ext_image_requirements_info where the entire extension is guarded by an ifdef vs. particular blocks of the extension. * generate headers with the latest XML file cl_khr_command_buffer_mutable_dispatch cl_ext_image_requirements_info cl_intel_queue_no_sync_operations * fix include guards for dx9 header for warning disables * regenerate headers from the latest XML file * regenerate headers from the latest XML file * generate extensions in the same order as previously For easier initial review, generate extensions in the same order as the existing files. This can be switched to a more regular order later. * update copyright dates to 2023 * fix the name of the cl_khr_image2d_from_buffer extension * fix layers layer_dispatch_ret * fix errcode_ret for clCreateFromGLBuffer * add CL_VERSION_3_0 guard to cl_ext_image_from_buffer * add CL_API_SUFFIX__VERSION_1_2 to clCreateProgramWithILKHR * add CL_VERSION_1_2 condition to cl_arm_get_core_id * add CL_API_SUFFIX__VERSION_1_0 to clCreateBufferWithPropertiesINTEL * add CL_API_SUFFIX__VERSION_1_0 to clEnqueueReadHostPipeINTEL and clEnqueueWriteHostPipeINTEL * fix off-by-one error for large bitfield bits * switch the syntax for large bitfield bits * refactor prototype guards for extension APIs Add CL_NO_EXTENSION_PROTOTYPES which affects all extension prototypes. Add CL_NO_EXPORTED_EXTENSION_PROTOTYPES which affects extension prototypes that are exported by some ICD loaders. Add CL_NO_NON_EXPORTED_EXTENSION_PROTOTYPES which affects extension prototypes that are exported by no known ICD loaders. Also cleans up generation on Windows, which otherwise would generate \r\n line separators. * Added CL_NO_CORE_API_PROTOTYPES. * slight renaming, add CL_NO_PROTOTYPES to cl.h * regenerate with all XML fixes * a few more naming adjustments * update README --------- Co-authored-by: Brice Videau <bvideau@anl.gov>
2023-04-09Add enum for command-buffer context query (#226)Ewan Crawford
Define `0x1299` as `CL_COMMAND_BUFFER_CONTEXT_KHR` to reflect merged spec PR https://github.com/KhronosGroup/OpenCL-Docs/pull/899 See also original issue https://github.com/KhronosGroup/OpenCL-Docs/issues/898
2023-03-28CI Fixes (#225)Brice Videau
* Update Ubuntu version. Container is still Ubuntu 18.04. * Update MacOS to install gcc versions that may be missing.
2023-03-20the pointer argument to clEnqueueWriteHostPipeINTEL should be const (#222)Ben Ashbaugh
2023-03-19Add cl_intel_program_scope_host_pipe (#220)Zibai Wang
* Add cl_intel_program_scope_host_pipe * Remove CL_API_ENTRY on the typedef Co-authored-by: Ben Ashbaugh <ben.ashbaugh@intel.com> * Update to INTEL_fn to keep naming consistent --------- Co-authored-by: Ben Ashbaugh <ben.ashbaugh@intel.com>
2023-02-22Install pkgconfig file in CMAKE_INSTALL_DATADIR as headers are architecture ↵Brice Videau
independent. (#218)
2023-02-17install pkg-config if it is not already installed (#219)Ben Ashbaugh
2023-01-31cl_loader_layers update (#211)upstream/v2023.02.06Brice Videau
* Added `CL_LAYER_NAME` info query for layers. * Added `CL_LAYER_OPTIONS` info query for layers. * Remove options for now as suggested by the working group.
2023-01-09Added support for pkg-config. (#213)Brice Videau
* Added support for pkg-config. * Update CMakeLists.txt * Update OpenCL-Headers.pc.in * Try to add CI for Linux. * Try to add CI for pkg-config for MacOS. * Update to same scheme as OpenCL Loader. * Update CMakeLists.txt
2022-11-11Fix CI for MacOS, see ↵Brice Videau
https://github.com/KhronosGroup/OpenCL-ICD-Loader/pull/198 . (#215)
2022-10-05Revert "Formatted headers and added style check."Brice Videau
This reverts commit 24fa0fe9f6fcf12ae4695b4cd324793e573a1756.
2022-10-05Formatted headers and added style check.Brice Videau
2022-09-30use cinttypes instead of inttypes.h header for C++ tests (#209)upstream/v2022.09.30Ben Ashbaugh
2022-09-06Add definitions for cl_arm_scheduling_controls v0.5.0 (#206)upstream/v2022.09.23Kévin Petit
Signed-off-by: Kevin Petit <kevin.petit@arm.com> Change-Id: Ic4d59b41e0c8198c8b3044fa7caad817eaf8bc59 Signed-off-by: Kevin Petit <kevin.petit@arm.com>
2022-09-02Disable anon struct warnings (#200)Nagy-Egri Máté Ferenc
2022-09-02Definitions for cl_khr_command_buffer_mutable_dispatch (#205)Ewan Crawford
Generated from XML in https://github.com/KhronosGroup/OpenCL-Docs/pull/819 using generation script from PR https://github.com/KhronosGroup/OpenCL-Headers/pull/161
2022-08-31Update cl_ext.h for cl_intel_queue_no_sync_operations (#204)aharon-abramson
* Update cl_ext.h Adding macros for cl_intel_queue_no_sync_operations * Update cl_ext.h * Update cl_ext.h
2022-08-17CMakeLists.txt: fix install on macOS if GNU coreutils are used (#203)Jörg Thalheim
* CMakeLists.txt: fix install on macOS if GNU coreutils are used bsd ln supports both `-h` and `-n`, while GNU only supports `-n`. In Nix we use GNU coreutils and hence the installation breaks. Also see https://github.com/NixOS/nixpkgs/pull/182909 With this patch installation will work with both variants of `ln` * CMakeLists.txt: use CMAKE_INSTALL_FULL_INCLUDEDIR for header files This allows to install header files in prefixes different from the rest. We need this for nix as well.
2022-07-02Update cl_icd.h (#202)Philip Turner
2022-05-10Add cl_ext_image_from_buffer extension definition (#196)upstream/v2022.05.18arm-wk
Co-authored-by: Kévin Petit <kpet@free.fr>
2022-05-05Add cl_ext_image_requirements_info extension definition (#197)arm-wk
2022-05-02Fix warnings on anonymous structs for MSVC (#198)Nagy-Egri Máté Ferenc
* MSVC allows anon structs even in conforming mode * Convert Windows CI to PowerShell * Compile tests in C++ mode * Optionally enable C++ testing * Backpropagate CI from Layers/SDK * Add header to Mac CI * Change to base image * Clang on Windows * Clang using pre-C11 mode * C++ tests without feeding .c files (Clang warning) * Guard Clang macro better * Remove hexadecimal constant * Fix cwd * Fix CWD for Mac too * Clean up MSVC anon struct detection * Remove unused debug macro
2022-02-08option to disable tests when subproject (#195)Nagy-Egri Máté Ferenc
2022-01-19Add cl_intel_mem_alloc_buffer_location property (#193)sherry-yuan
------------------------------------------------------- This property allows user to specify which device global memory should be allocated to. Supported by OpenCL 3.0 clCreateBufferWithProperties functions and OpenCL 1.x 2.x clCreateBufferWithPropertiesINTEL extension function. Done to align with the spec in https://github.com/KhronosGroup/OpenCL-Docs/blob/master/extensions/cl_intel_mem_alloc_buffer_location.asciidoc
2022-01-19OpenCL-SDK base changes (#189)Nagy-Egri Máté Ferenc
* Initial CI stub * Add nvidia build * Use custom image * Relay compiler to CMake * Consume test too should use multi-config generator * Consume too requires build artifacts * Test COMPILER matric var * Set C compiler instead of C++ * Add git to image for dependencies * Update base image version * Fetch CMake 3.1.3 * Install libidn11 so for CMake 3.1.3 * Added certificates for git clone over HTTPS * Bump image version * Add ruby to image * Add support for build using add_subdirectory * Added installation of SDK deps via Vcpkg * Added ROCm execution image * Updated build instructions * Added missing GLEW dep to image * Install CMake 3.3.2 * Updated ROCm install method * Add GLU install to image * Add CMake 3.10 for SDK sample building minimum * Add missing tool for install * Initial CI stub * Add nvidia build * Use custom image * Relay compiler to CMake * Consume test too should use multi-config generator * Consume too requires build artifacts * Test COMPILER matric var * Set C compiler instead of C++ * Add git to image for dependencies * Update base image version * Fetch CMake 3.1.3 * Install libidn11 so for CMake 3.1.3 * Added certificates for git clone over HTTPS * Bump image version * Add ruby to image * Add support for build using add_subdirectory * Added installation of SDK deps via Vcpkg * Added ROCm execution image * Updated build instructions * Added missing GLEW dep to image * Install CMake 3.3.2 * Updated ROCm install method * Add GLU install to image * Add CMake 3.10 for SDK sample building minimum * Add missing tool for install * Move Dockerfiles to OpenCL-SDK * Install MacOS-style include symlink Remove the desperate SYSTEM BEFORE properties on the include paths and properly hide MacOS system headers with our own through a symlink and user `-I` * Allow both Apple and Linux style includes on Mac * Fixed typo * Remove out-of-context copy-pasta error * Remove GitLab CI
2021-12-14Add definitions for cl_arm_protected_memory_allocation (#187)upstream/v2022.01.04Kévin Petit
* Add definitions for cl_arm_protected_memory_allocation Specification: https://github.com/KhronosGroup/OpenCL-Docs/pull/727 Signed-off-by: Kevin Petit <kevin.petit@arm.com> * fix UB
2021-11-22update headers for cl_intel_unified_shared_memory (#184)Ben Ashbaugh
2021-11-16Add provisional command-buffer extension (#182)Ewan Crawford
* Add provisional command-buffer extension Run `gen_headers.py` from https://github.com/KhronosGroup/OpenCL-Headers/pull/161 on XML file containing https://github.com/KhronosGroup/OpenCL-Docs/pull/711 new spec extensions. The only XML changes are for the `cl_khr_command_buffer` extension, which declarations gets generated at the top of `cl_ext.h` by the script. So I have taken the generated `cl_khr_command_buffer` code and applied it to the same location in master branch `cl_ext.h`. * Remove INFO from command-buffer query enums Updated to reflect https://github.com/KhronosGroup/OpenCL-Docs/pull/711/commits/929586586711de05bd45c05840c3b3d147d4e949 * Reflect command-buffer property changes 1. Change type of `cl_command_buffer_properties_khr` to `cl_properties` 2. Add a new `cl_command_buffer_flags_khr` type. 3. Rename `CL_COMMAND_BUFFER_PROPERTIES_KHR` to `CL_COMMAND_BUFFER_FLAGS_KHR`. 3a. Change the expected type of this to `cl_command_buffer_flags_khr`. 4. Change type of `cl_ndrange_kernel_command_properties_khr` to `cl_properties`
2021-11-15Rename cl_intel_thread_local_exec to cl_intel_exec_by_local_thread (#183)Feng Zou
cl_intel_exec_by_local_thread is the correct extension name.
2021-10-21Fix API suffix version macros for semaphore extensions command definitions ↵Kévin Petit
(#181) These extensions only require OpenCL 1.2 Signed-off-by: Kevin Petit <kevin.petit@arm.com>
2021-10-18If change the include path destination when run cmake configure with ↵Gustavo Alvarez
`DCMAKE_INSTALL_INCLUDEDIR`, the .cmake generated still point to hardcoded path `include`. this fix it (#178)
2021-10-18add external memory, external semaphore, and semaphore provisional ↵Ben Ashbaugh
extensions (#180) * add external memory, external semaphore, and semaphore extensions * remove duplicated enums
2021-10-06Fix condition for warning 4201 pop (#179)y-novikov
Matching the condition for push. New clang compiler version complains that the warning can be popped without being pushed first.
2021-09-16update extension headers for cl_intel_device_attribute_query (#172)Ben Ashbaugh