Skip to content

Commit 1f2a44a

Browse files
authored
Add a few missing Arm extensions to the XML (#1525)
https://registry.khronos.org/OpenCL/extensions/arm/cl_arm_import_memory.txt defines multiple extensions. Document these as separate extensions in the XML with their respective version number and enum requirements. Also remove the comment giving an overview of these extensions; this is not done for any other extension. Add the following missing extensions: - cl_arm_non_uniform_work_group_size - cl_arm_integer_dot_product_int8 - cl_arm_integer_dot_product_accumulate_int8 - cl_arm_integer_dot_product_accumulate_int16 - cl_arm_integer_dot_product_accumulate_saturate_int8 Change-Id: I3539a45d9e5fdde6f344448a1a28915317636a22 Signed-off-by: Kevin Petit <kevin.petit@arm.com>
1 parent 9f68efb commit 1f2a44a

1 file changed

Lines changed: 28 additions & 23 deletions

File tree

xml/cl.xml

Lines changed: 28 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -6436,7 +6436,7 @@ server's OpenCL/api-docs repository.
64366436
<enum name="CL_DEVICE_MAX_NAMED_BARRIER_COUNT_KHR"/>
64376437
</require>
64386438
</extension>
6439-
<extension name="cl_arm_import_memory" revision="0.0.0" supported="opencl">
6439+
<extension name="cl_arm_import_memory" revision="1.1.0" supported="opencl">
64406440
<require>
64416441
<type name="CL/cl.h"/>
64426442
</require>
@@ -6445,33 +6445,33 @@ server's OpenCL/api-docs repository.
64456445
</require>
64466446
<require comment="cl_import_properties_arm">
64476447
<enum name="CL_IMPORT_TYPE_ARM"/>
6448-
<enum name="CL_IMPORT_TYPE_HOST_ARM"/>
6448+
</require>
6449+
<require>
6450+
<command name="clImportMemoryARM"/>
6451+
</require>
6452+
</extension>
6453+
<extension name="cl_arm_import_memory_dma_buf" revision="1.0.0" depends="cl_arm_import_memory" supported="opencl">
6454+
<require comment="cl_import_properties_arm">
64496455
<enum name="CL_IMPORT_TYPE_DMA_BUF_ARM"/>
6456+
<enum name="CL_IMPORT_DMA_BUF_DATA_CONSISTENCY_WITH_HOST_ARM"/>
6457+
</require>
6458+
</extension>
6459+
<extension name="cl_arm_import_memory_host" revision="1.0.0" depends="cl_arm_import_memory" supported="opencl">
6460+
<require comment="cl_import_properties_arm">
6461+
<enum name="CL_IMPORT_TYPE_HOST_ARM"/>
6462+
</require>
6463+
</extension>
6464+
<extension name="cl_arm_import_memory_protected" revision="1.0.0" depends="cl_arm_import_memory_dma_buf" supported="opencl">
6465+
<require comment="cl_import_properties_arm">
64506466
<enum name="CL_IMPORT_TYPE_PROTECTED_ARM"/>
6467+
</require>
6468+
</extension>
6469+
<extension name="cl_arm_import_memory_android_hardware_buffer" revision="1.1.0" depends="cl_arm_import_memory" supported="opencl">
6470+
<require comment="cl_import_properties_arm">
64516471
<enum name="CL_IMPORT_TYPE_ANDROID_HARDWARE_BUFFER_ARM"/>
6452-
<enum name="CL_IMPORT_DMA_BUF_DATA_CONSISTENCY_WITH_HOST_ARM"/>
6453-
<enum name="CL_IMPORT_MEMORY_WHOLE_ALLOCATION_ARM"/>
64546472
<enum name="CL_IMPORT_ANDROID_HARDWARE_BUFFER_PLANE_INDEX_ARM"/>
64556473
<enum name="CL_IMPORT_ANDROID_HARDWARE_BUFFER_LAYER_INDEX_ARM"/>
6456-
</require>
6457-
<require>
6458-
<comment>
6459-
Allows for direct memory import into OpenCL via the clImportMemoryARM function.
6460-
6461-
Memory imported through this interface will be mapped into the device's page
6462-
tables directly, providing zero copy access. It will never fall back to copy
6463-
operations and aliased buffers.
6464-
6465-
Types of memory supported for import are specified as additional extension
6466-
strings.
6467-
6468-
This extension produces cl_mem allocations which are compatible with all other
6469-
users of cl_mem in the standard API.
6470-
6471-
This extension maps pages with the same properties as the normal buffer creation
6472-
function clCreateBuffer.
6473-
</comment>
6474-
<command name="clImportMemoryARM"/>
6474+
<enum name="CL_IMPORT_MEMORY_WHOLE_ALLOCATION_ARM"/>
64756475
</require>
64766476
</extension>
64776477
<extension name="cl_arm_shared_virtual_memory" revision="0.0.0" supported="opencl">
@@ -8138,5 +8138,10 @@ server's OpenCL/api-docs repository.
81388138
<enum name="CL_KERNEL_ALLOCATIONS_INFO_INTEL"/>
81398139
</require>
81408140
</extension>
8141+
<extension name="cl_arm_non_uniform_work_group_size" revision="1.0.0" supported="opencl" comment="Build option only"/>
8142+
<extension name="cl_arm_integer_dot_product_int8" revision="1.0.0" supported="opencl" comment="OpenCL C only"/>
8143+
<extension name="cl_arm_integer_dot_product_accumulate_int8" revision="1.0.0" supported="opencl" comment="OpenCL C only"/>
8144+
<extension name="cl_arm_integer_dot_product_accumulate_int16" revision="1.0.0" supported="opencl" comment="OpenCL C only"/>
8145+
<extension name="cl_arm_integer_dot_product_accumulate_saturate_int8" revision="1.0.0" supported="opencl" comment="OpenCL C only"/>
81418146
</extensions>
81428147
</registry>

0 commit comments

Comments
 (0)