Lines Matching +full:- +full:- +full:-
4 .none { background-color: #FFCCCC }
5 .part { background-color: #FFFF99 }
6 .good { background-color: #CCFF99 }
33 - For general issues and bugs with OpenCL in clang refer to `the GitHub issue
35 <https://github.com/llvm/llvm-project/issues?q=is%3Aopen+is%3Aissue+label%3Aopencl>`__.
37 - Command-line flag :option:`-cl-ext` (used to override extensions/
39 implemented fully through libraries (see :ref:`library-based features and
51 ---------------
59 <https://www.khronos.org/registry/OpenCL/specs/opencl-1.2.pdf#167>`_
62 Note that ``-cl-kernel-arg-info`` enables more information about the original
69 <https://www.khronos.org/registry/spir/specs/spir_spec-2.0.pdf#18>`_
72 -----------------------
77 All the options in this section are frontend-only and therefore if used
78 with regular clang driver they require frontend forwarding, e.g. ``-cc1``
79 or ``-Xclang``.
83 .. option:: -finclude-default-header
91 .. code-block:: console
93 $ clang -Xclang -finclude-default-header test.cl
95 Alternatively the internal header `opencl-c.h` containing the declarations
96 can be included manually using ``-include`` or ``-I`` followed by the path
100 .. code-block:: console
102 $ clang -I<path to clang sources>/lib/Headers/opencl-c.h test.cl
103 …$ clang -I<path to clang installation>/lib/clang/<llvm version>/include/opencl-c.h/opencl-c.h test…
106 ``#include <opencl-c.h>`` just as a regular C include.
114 .. code-block:: console
116 …$ clang -target spir-unknown-unknown -c -emit-llvm -Xclang -finclude-default-header -fmodules -fim…
119 declarations is to use mechanism enabled by :ref:`-fdeclare-opencl-builtins
125 .. option:: -fdeclare-opencl-builtins
128 :ref:`-finclude-default-header <opencl_finclude_default_header>`, clang
130 ``-fdeclare-opencl-builtins``. This does not declare the builtin types and
131 therefore it has to be used in combination with ``-finclude-default-header``
136 .. code-block:: console
138 $ clang -Xclang -fdeclare-opencl-builtins test.cl
142 .. option:: -ffake-address-space-map
145 This allows adding explicit address space IDs to the bitcode for non-segmented
147 logical address spaces by default. Passing ``-ffake-address-space-map`` will
149 ``1-global``, ``2-constant``, ``3-local``, ``4-generic``. The private address
153 .. code-block:: console
155 $ clang -cc1 -ffake-address-space-map test.cl
160 ---------------
166 - All pipe functions from `section 6.13.16.2/6.13.16.3
167 <https://www.khronos.org/registry/cl/specs/opencl-2.0-openclc.pdf#160>`_ of
170 - Address space qualifier conversion functions ``to_global``/``to_local``/``to_private``
172 <https://www.khronos.org/registry/cl/specs/opencl-2.0-openclc.pdf#101>`_.
174 - All the ``enqueue_kernel`` functions from `section 6.13.17.1
175 <https://www.khronos.org/registry/cl/specs/opencl-2.0-openclc.pdf#164>`_ and
177 <https://www.khronos.org/registry/cl/specs/opencl-2.0-openclc.pdf#171>`_.
182 :ref:`-fdeclare-opencl-builtins option <opencl_fdeclare_opencl_builtins>`) consists
185 - A TableGen definitions file ``OpenCLBuiltins.td``. This contains a compact
189 - A Clang TableGen emitter defined in ``ClangOpenCLBuiltinEmitter.cpp``. During
195 - OpenCL specific code in ``SemaLookup.cpp``. When ``Sema::LookupBuiltin``
202 ------------------------------
226 <https://github.com/llvm/llvm-project/blob/main/clang/include/clang/Basic/OpenCLExtensions.def>`__,
234 Note that by default targets like `SPIR-V`, `SPIR` or `X86` expose all the OpenCL
238 with :option:`-cl-ext` command-line flags.
248 non-native types or functions) parsed regularly. Similar to other languages this
257 opencl-c-base.h
258 <https://github.com/llvm/llvm-project/blob/main/clang/lib/Headers/opencl-c-base.h>`__).
278 provide some non-conformant functionality for pragmas e.g. add diagnostics on
286 ------------------------
316 <https://github.com/KhronosGroup/OpenCL-Docs/releases/tag/cxxforopencl-docrev2021.12>`_.
321 with '[C++4OpenCL]' - click `here
322 <https://github.com/llvm/llvm-project/issues?q=is%3Aissue+is%3Aopen+%5BC%2B%2B4OpenCL%5D>`__
327 ----------------------------------------
329 - Support of C++ for OpenCL 2021 is currently in experimental phase. Refer to
333 - IR generation for non-trivial global destructors is incomplete (See:
336 - Support of `destrutors with non-default address spaces
346 functionality in OpenCL C 3.0 is indicated with the presence of feature-test macros
347 (list of feature-test macros is `here <https://www.khronos.org/registry/OpenCL/specs/3.0-unified/ht…
348 Command-line flag :option:`-cl-ext` can be used to override features supported by a target.
351 user should specify both (extension and feature) in command-line flag:
353 .. code-block:: console
355 $ clang -cl-std=CL3.0 -cl-ext=+cl_khr_fp64,+__opencl_c_fp64 ...
356 $ clang -cl-std=CL3.0 -cl-ext=-cl_khr_fp64,-__opencl_c_fp64 ...
361 ----------------------------------
366 …------------------------------+-------------------------+-----------------------------------------…
369 | Command line interface | New value for ``-cl-std`` flag …
370 …------------------------------+-------------------------+-----------------------------------------…
372 …------------------------------+-------------------------+-----------------------------------------…
374 …------------------------------+-------------------------+-----------------------------------------…
376 …------------------------------+-------------------------+-----------------------------------------…
378 …------------------------------+-------------------------+-----------------------------------------…
380 …------------------------------+-------------------------+-----------------------------------------…
382 …------------------------------+-------------------------+-----------------------------------------…
384 …------------------------------+-------------------------+-----------------------------------------…
386 …------------------------------+-------------------------+-----------------------------------------…
387 | Feature optionality | Blocks and Device-side kernel enqueue including builtin functions …
388 …------------------------------+-------------------------+-----------------------------------------…
390 …------------------------------+-------------------------+-----------------------------------------…
392 …------------------------------+-------------------------+-----------------------------------------…
394 …------------------------------+-------------------------+-----------------------------------------…
396 …------------------------------+-------------------------+-----------------------------------------…
398 …------------------------------+-------------------------+-----------------------------------------…
400 …------------------------------+-------------------------+-----------------------------------------…
402 …------------------------------+-------------------------+-----------------------------------------…
413 <https://github.com/llvm/llvm-project/issues/new>`_.
418 ------------------------
426 see :doc:`LanguageExtensions` for more details. The use of non-conformant
427 features enabled by the extensions does not expose non-conformant behavior
439 .. code-block:: c++
455 .. code-block:: console
457 $ clang -I<path to libcxx checkout or installation>/include test.clcpp