Coverage Report

Created: 2019-07-24 05:18

/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/tools/clang/include/clang/Basic/OpenCLExtensions.def
Line
Count
Source
1
109k
//===--- OpenCLExtensions.def - OpenCL extension list -----------*- C++ -*-===//
2
109k
//
3
109k
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
109k
// See https://llvm.org/LICENSE.txt for license information.
5
109k
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
109k
//
7
109k
//===----------------------------------------------------------------------===//
8
109k
//
9
109k
// This file defines the list of supported OpenCL extensions.
10
109k
//
11
109k
//===----------------------------------------------------------------------===//
12
109k
13
109k
// Macro OPENCLEXT or OPENCLEXT_INTERNAL can be defined to enumerate the
14
109k
// OpenCL extensions listed in this file.
15
109k
//
16
109k
// If the extensions are to be enumerated without the supported OpenCL version,
17
109k
// define OPENCLEXT(ext) where ext is the name of the extension.
18
109k
//
19
109k
// If the extensions are to be enumerated with supported OpenCL version,
20
109k
// define OPENCLEXT_INTERNAL(ext, avail, core) where
21
109k
//   ext - name of the extension or optional core feature.
22
109k
//   avail - minimum OpenCL version supporting it.
23
109k
//   core - minimum OpenCL version when the extension becomes optional core
24
109k
//          feature or core feature. ~0U indicates not a core feature or an
25
109k
//          optional core feature.
26
109k
27
#ifndef OPENCLEXT_INTERNAL
28
#ifndef OPENCLEXT
29
#pragma error "macro OPENCLEXT or OPENCLEXT_INTERNAL is required"
30
#else
31
25.0k
#define OPENCLEXT_INTERNAL(ext, ...) OPENCLEXT(ext)
32
#endif // OPENCLEXT
33
#endif // OPENCLEXT_INTERNAL
34
35
109k
// OpenCL 1.0.
36
109k
OPENCLEXT_INTERNAL(cl_khr_3d_image_writes, 100, 200)
37
109k
// fprounding mode is special since it is not mentioned beyond 1.0
38
109k
OPENCLEXT_INTERNAL(cl_khr_select_fprounding_mode, 100, 110)
39
109k
OPENCLEXT_INTERNAL(cl_khr_byte_addressable_store, 100, 110)
40
109k
OPENCLEXT_INTERNAL(cl_khr_fp16, 100, ~0U)
41
109k
OPENCLEXT_INTERNAL(cl_khr_fp64, 100, 120)
42
109k
OPENCLEXT_INTERNAL(cl_khr_global_int32_base_atomics, 100, 110)
43
109k
OPENCLEXT_INTERNAL(cl_khr_global_int32_extended_atomics, 100, 110)
44
109k
OPENCLEXT_INTERNAL(cl_khr_local_int32_base_atomics, 100, 110)
45
109k
OPENCLEXT_INTERNAL(cl_khr_local_int32_extended_atomics, 100, 110)
46
109k
OPENCLEXT_INTERNAL(cl_khr_int64_base_atomics, 100, ~0U)
47
109k
OPENCLEXT_INTERNAL(cl_khr_int64_extended_atomics, 100, ~0U)
48
109k
OPENCLEXT_INTERNAL(cl_khr_gl_sharing, 100, ~0U)
49
109k
OPENCLEXT_INTERNAL(cl_khr_icd, 100, ~0U)
50
109k
51
109k
// OpenCL 1.1.
52
109k
OPENCLEXT_INTERNAL(cl_khr_gl_event, 110, ~0U)
53
109k
OPENCLEXT_INTERNAL(cl_khr_d3d10_sharing, 110, ~0U)
54
109k
55
109k
// EMBEDDED_PROFILE
56
109k
OPENCLEXT_INTERNAL(cles_khr_int64, 110, ~0U)
57
109k
58
109k
// OpenCL 1.2.
59
109k
OPENCLEXT_INTERNAL(cl_khr_context_abort, 120, ~0U)
60
109k
OPENCLEXT_INTERNAL(cl_khr_d3d11_sharing, 120, ~0U)
61
109k
OPENCLEXT_INTERNAL(cl_khr_depth_images, 120, ~0U)
62
109k
OPENCLEXT_INTERNAL(cl_khr_dx9_media_sharing, 120, ~0U)
63
109k
OPENCLEXT_INTERNAL(cl_khr_image2d_from_buffer, 120, ~0U)
64
109k
OPENCLEXT_INTERNAL(cl_khr_initialize_memory, 120, ~0U)
65
109k
OPENCLEXT_INTERNAL(cl_khr_gl_depth_images, 120, ~0U)
66
109k
OPENCLEXT_INTERNAL(cl_khr_gl_msaa_sharing, 120, ~0U)
67
109k
OPENCLEXT_INTERNAL(cl_khr_spir, 120, ~0U)
68
109k
69
109k
// OpenCL 2.0.
70
109k
OPENCLEXT_INTERNAL(cl_khr_egl_event, 200, ~0U)
71
109k
OPENCLEXT_INTERNAL(cl_khr_egl_image, 200, ~0U)
72
109k
OPENCLEXT_INTERNAL(cl_khr_mipmap_image, 200, ~0U)
73
109k
OPENCLEXT_INTERNAL(cl_khr_srgb_image_writes, 200, ~0U)
74
109k
OPENCLEXT_INTERNAL(cl_khr_subgroups, 200, ~0U)
75
109k
OPENCLEXT_INTERNAL(cl_khr_terminate_context, 200, ~0U)
76
109k
77
109k
// Clang Extensions.
78
109k
OPENCLEXT_INTERNAL(cl_clang_storage_class_specifiers, 100, ~0U)
79
109k
80
109k
// AMD OpenCL extensions
81
109k
OPENCLEXT_INTERNAL(cl_amd_media_ops, 100, ~0U)
82
109k
OPENCLEXT_INTERNAL(cl_amd_media_ops2, 100, ~0U)
83
109k
84
109k
// ARM OpenCL extensions
85
109k
OPENCLEXT_INTERNAL(cl_arm_integer_dot_product_int8, 120, ~0U)
86
109k
OPENCLEXT_INTERNAL(cl_arm_integer_dot_product_accumulate_int8, 120, ~0U)
87
109k
OPENCLEXT_INTERNAL(cl_arm_integer_dot_product_accumulate_int16, 120, ~0U)
88
109k
OPENCLEXT_INTERNAL(cl_arm_integer_dot_product_accumulate_saturate_int8, 120, ~0U)
89
109k
90
109k
// Intel OpenCL extensions
91
109k
OPENCLEXT_INTERNAL(cl_intel_subgroups, 120, ~0U)
92
109k
OPENCLEXT_INTERNAL(cl_intel_subgroups_short, 120, ~0U)
93
109k
OPENCLEXT_INTERNAL(cl_intel_device_side_avc_motion_estimation, 120, ~0U)
94
109k
95
109k
#undef OPENCLEXT_INTERNAL
96
109k
97
#ifdef OPENCLEXT
98
#undef OPENCLEXT
99
#endif